LSM6DSOX Simple test¶
Ensure your LSM6DSOX device works with this simple test.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | # SPDX-FileCopyrightText: Copyright (c) 2020 Bryan Siepert for Adafruit Industries
#
# SPDX-License-Identifier: MIT
import time
import board
from adafruit_lsm6ds.lsm6dsox import LSM6DSOX
i2c = board.I2C() # uses board.SCL and board.SDA
sensor = LSM6DSOX(i2c)
while True:
print("Acceleration: X:%.2f, Y: %.2f, Z: %.2f m/s^2" % (sensor.acceleration))
print("Gyro X:%.2f, Y: %.2f, Z: %.2f radians/s" % (sensor.gyro))
print("")
time.sleep(0.5)
|
LSM6DSO32 Simple test¶
Ensure your LSM6DSO32 device works with this simple test.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | # SPDX-FileCopyrightText: Copyright (c) 2020 Bryan Siepert for Adafruit Industries
#
# SPDX-License-Identifier: MIT
import time
import board
from adafruit_lsm6ds.lsm6dso32 import LSM6DSO32
i2c = board.I2C() # uses board.SCL and board.SDA
sensor = LSM6DSO32(i2c)
while True:
print("Acceleration: X:%.2f, Y: %.2f, Z: %.2f m/s^2" % (sensor.acceleration))
print("Gyro X:%.2f, Y: %.2f, Z: %.2f radians/s" % (sensor.gyro))
print("")
time.sleep(0.5)
|
LSM6DS Simple test¶
Ensure your LSM6DS device works with this simple test.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | # SPDX-FileCopyrightText: Copyright (c) 2020 Bryan Siepert for Adafruit Industries
#
# SPDX-License-Identifier: MIT
import time
import board
from adafruit_lsm6ds.lsm6ds33 import LSM6DS33
i2c = board.I2C() # uses board.SCL and board.SDA
sensor = LSM6DS33(i2c)
while True:
print("Acceleration: X:%.2f, Y: %.2f, Z: %.2f m/s^2" % (sensor.acceleration))
print("Gyro X:%.2f, Y: %.2f, Z: %.2f radians/s" % (sensor.gyro))
print("")
time.sleep(0.5)
|
ISM330DHCX Simple test¶
Ensure your ISM330DHCX device works with this simple test.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | # SPDX-FileCopyrightText: Copyright (c) 2020 Bryan Siepert for Adafruit Industries
#
# SPDX-License-Identifier: MIT
import time
import board
from adafruit_lsm6ds.ism330dhcx import ISM330DHCX
i2c = board.I2C() # uses board.SCL and board.SDA
sensor = ISM330DHCX(i2c)
while True:
print("Acceleration: X:%.2f, Y: %.2f, Z: %.2f m/s^2" % (sensor.acceleration))
print("Gyro X:%.2f, Y: %.2f, Z: %.2f radians/s" % (sensor.gyro))
print("")
time.sleep(0.5)
|
LSM6DS Full test¶
LSM6DS Full tests
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 | # SPDX-FileCopyrightText: Copyright (c) 2020 Bryan Siepert for Adafruit Industries
#
# SPDX-License-Identifier: MIT
import time
import board
# pylint:disable=no-member
from adafruit_lsm6ds import Rate, AccelRange, GyroRange
from adafruit_lsm6ds.lsm6dsox import LSM6DSOX as LSM6DS
# from adafruit_lsm6ds.lsm6ds33 import LSM6DS33 as LSM6DS
# from adafruit_lsm6ds.lsm6dso32 import LSM6DSO32 as LSM6DS
# from adafruit_lsm6ds.ism330dhcx import ISM330DHCX as LSM6DS
i2c = board.I2C() # uses board.SCL and board.SDA
sensor = LSM6DS(i2c)
sensor.accelerometer_range = AccelRange.RANGE_8G
print(
"Accelerometer range set to: %d G" % AccelRange.string[sensor.accelerometer_range]
)
sensor.gyro_range = GyroRange.RANGE_2000_DPS
print("Gyro range set to: %d DPS" % GyroRange.string[sensor.gyro_range])
sensor.accelerometer_data_rate = Rate.RATE_1_66K_HZ
# sensor.accelerometer_data_rate = Rate.RATE_12_5_HZ
print("Accelerometer rate set to: %d HZ" % Rate.string[sensor.accelerometer_data_rate])
sensor.gyro_data_rate = Rate.RATE_1_66K_HZ
print("Gyro rate set to: %d HZ" % Rate.string[sensor.gyro_data_rate])
while True:
print(
"Accel X:%.2f Y:%.2f Z:%.2f ms^2 Gyro X:%.2f Y:%.2f Z:%.2f radians/s"
% (sensor.acceleration + sensor.gyro)
)
time.sleep(0.05)
|
Pedometer Example¶
Example showing how to use the device as a pedometer
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | # SPDX-FileCopyrightText: Copyright (c) 2020 Bryan Siepert for Adafruit Industries
#
# SPDX-License-Identifier: MIT
""" This example shows off how to use the step counter built
into the ST LSM6DS series IMUs. The steps are calculated in
the chip so you don't have to do any calculations!"""
import time
import board
# pylint:disable=no-member
from adafruit_lsm6ds.lsm6ds33 import LSM6DS33
from adafruit_lsm6ds import Rate, AccelRange
i2c = board.I2C() # uses board.SCL and board.SDA
sensor = LSM6DS33(i2c)
# enable accelerometer sensor @ 2G and 26 Hz
sensor.accelerometer_range = AccelRange.RANGE_2G
sensor.accelerometer_data_rate = Rate.RATE_26_HZ
# no gyro used for step detection
sensor.gyro_data_rate = Rate.RATE_SHUTDOWN
# enable the pedometer
sensor.pedometer_enable = True
while True:
print("Steps: ", sensor.pedometer_steps)
time.sleep(1)
|
Rate test¶
Example showing a Rate test
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | # SPDX-FileCopyrightText: Copyright (c) 2020 Bryan Siepert for Adafruit Industries
#
# SPDX-License-Identifier: MIT
import board
# pylint:disable=no-member,unused-import
from adafruit_lsm6ds import Rate
from adafruit_lsm6ds.lsm6dsox import LSM6DSOX as LSM6DS
# from adafruit_lsm6ds.lsm6ds33 import LSM6DS33 as LSM6DS
# from adafruit_lsm6ds.lsm6dso32 import LSM6DSO32 as LSM6DS
# from adafruit_lsm6ds.ism330dhcx import ISM330DHCX as LSM6DS
i2c = board.I2C() # uses board.SCL and board.SDA
sensor = LSM6DS(i2c)
while True:
sensor.accelerometer_data_rate = Rate.RATE_12_5_HZ
sensor.gyro_data_rate = Rate.RATE_12_5_HZ
for i in range(100):
print(
"(%.2f, %.2f, %.2f, %.2f, %.2f, %.2f" % (sensor.acceleration + sensor.gyro)
)
print()
sensor.accelerometer_data_rate = Rate.RATE_52_HZ
sensor.gyro_data_rate = Rate.RATE_52_HZ
for i in range(100):
print(
"(%.2f, %.2f, %.2f, %.2f, %.2f, %.2f" % (sensor.acceleration + sensor.gyro)
)
print()
sensor.accelerometer_data_rate = Rate.RATE_416_HZ
sensor.gyro_data_rate = Rate.RATE_416_HZ
for i in range(100):
print(
"(%.2f, %.2f, %.2f, %.2f, %.2f, %.2f" % (sensor.acceleration + sensor.gyro)
)
print()
|