drivers.imu module¶
- class drivers.imu.BNO055(i2c, address=micropython.const)[source]¶
Bases:
object- calibration_status()[source]¶
Get calibration status for each sensor (sys, gyro, accel, mag).
Returns: Tuple of 4 values (0-3 each, higher = better calibrated).
- initialize(mode=micropython.const)[source]¶
Initialize sensor, configure power/units, and set operating mode.
- Args:
mode: Operation mode (default: NDOF_OP_MODE).
Returns: True on success. Raises OSError if chip not found.
- reset()[source]¶
Perform hardware reset and verify chip responds.
Returns: True if chip ready, False if timeout.
- set_calibration_offsets(offsets)[source]¶
Load calibration offset profile (must be exactly 22 bytes).
- set_euler_tare(euler_hrp)[source]¶
Manually set tare offset for Euler angles (heading, roll, pitch).
- tare_accel_gyro(sample_count=100, sample_delay_ms=5)[source]¶
Calibrate accelerometer and gyroscope offsets by sampling while stationary.
- Args:
sample_count: Number of samples to average (default: 100). sample_delay_ms: Delay between samples in ms (default: 5).
Returns: Tuple (accel_tare, gyro_tare).