
Adafruit LSM6DSOX & LIS3MDL 9 DoF IMU Breakout Board
Adafruit LSM6DSOX and LIS3MDL 9 DoF IMU Breakout Board adds high-quality motion, direction, and orientation sensing to an Arduino project. This breakout board contains two chips that sit side-by-side to provide 9 degrees of full-motion data. The board includes an LSM6DSOX, a 6-DoF IMU accelerometer, and a gyroscope. The 3-axis accelerometer can tell the user which direction is down towards the Earth or how fast the board is accelerating in 3D space. The 3-axis gyroscope can measure spin and twist. This sensor from ST has very low gyro zero rates and noise, compared to the MPU6050 or even LSM6DS33, so it's excellent for orientation fusion usage. The user will get less drift and faster responses.The LSM6DSOX has flexible data rates and ranges. For the accelerometer: ±2/±4/±8/±16g at 1.6Hz to 6.7KHz update rate. For the gyroscope: ±125/±250/±500/±1000/±2000dps at 12.5Hz to 6.7KHz. The device also includes built-in tap detection, activity detection, pedometer/step counter, and a programmable finite state machine/machine learning core that can perform some basic gesture recognition. The breakout board also includes a LIS3MDL 3-axis magnetometer that can sense where the strongest magnetic force is coming from, generally used to detect magnetic north. The three triple-axis sensors add up to 9 degrees of freedom, by combining this data, the user can orient the board.
These sensors are placed on a compact breakout board with voltage regulation and level-shifted inputs. That allows the user to be able to use them with 3V or 5V power/logic devices. Only the I2C interface is exposed and some interrupt pins from each chip. The breakout comes fully assembled and tested, with some extra headers so the user can use it on a breadboard. Four mounting holes make for a secure connection. Since it has I2C, the user can easily connect it up with two data wires plus power and ground. The SparkFun qwiic compatible STEMMA QT connectors have been included for the I2C bus, so there is no need to solder. The user can wire up to a favorite microcontroller like the STM32F405 Feather using a STEMMA QT adapter cable to get 6-DoF data right away.
The user can change the I2C addresses on the back using the solder jumpers, to have two of these sensor boards on one bus. Some drivers and examples have been created for the user. Adafruit wrote libraries to help the user get these sensors integrated for Arduino/C++. This library covers the accel/gyro and the magnetometer. For advanced Arduino usage, ST has a fully-featured library that includes extras such as FIFO management and tap detection for the LSM6DSOX and for the LIS3MDL magnetometer.
Specifications
- LSM6DSOX specifications
- Accelerometer ±2/±4/±8/±16g at 1.6Hz to 6.7KHz update rate
- Gyroscope: ±125/±250/±500/±1000/±2000dps at 12.5Hz to 6.7KHz
- Continuous and single-conversion modes
- Advanced pedometer, step detector, and step counter
- Significant motion detection, tilt detection
- Standard interrupts: free-fall, wakeup, 6D/4D orientation, click and double-click
- Programmable finite state machine: accelerometer, gyroscope and external sensors
- Machine learning core
- I2C Address 0x6A or 0x6B
- LIS3MDL specifications
- ±4/±8/±12/±16 gauss selectable magnetic full scales
- Continuous and single-conversion modes
- 16-bit data output
- Interrupt generator
- I2C Address 0x1C or 0x1E