Add high quality motion, direction and orientation sensing to your project with these all-in-one 9 Degree of Freedom (9-DoF)  FeatherWings and breakouts with sensors from ST. This little breakout and FeatherWing contain two chips that sit side-by-side to provide 9 degrees of full-motion data.

The breakout and FeatherWings include an LSM6DSOX, ISM330DHC, ISM330DHCX, or LSM6DS33. These are 6-DoF IMUs with accelerometer + gyro. The 3-axis accelerometer, can tell you which direction is down towards the Earth (by measuring gravity) or how fast the board is accelerating in 3D space. The 3-axis gyroscope that can measure spin and twist. The three triple-axis sensors add up to 9 degrees of freedom.

The LSM6DS33 is a lower cost IMU.

This LSM6DSOX is a mid-range cost IMU has very low gyro zero rate and noise compared to the  LSM6DS33, so it's excellent for orientation fusion usage: you'll get less drift and faster responses.

The LSM6DSOX and LSM6DS33 both have flexible data rates and ranges. For the accelerometer: ±2/±4/±8/±16 g at 1.6 Hz to 6.7KHz update rate. For the gyroscope: ±125/±250/±500/±1000/±2000 dps at 12.5 Hz to 6.7 KHz. There's also some nice extras, such as built-in tap detection, activity detection, and pedometer/step counter. The LSM6DSOX also has a programmable finite state machine / machine learning core that can perform some basic gesture recognition.

The ISM330DHCX also has flexible data rates and ranges. For the accelerometer: ±2/±4/±8/±16 g at 1.6 Hz to 6.7KHz update rate. For the gyroscope: ±125/±250/±500/±1000/±2000/±4000 dps at 12.5 Hz to 6.7 KHz. In particular, this is one of the few gyro's we stock with 4000 dps range, usually they top out at 2000. This sensor has extra calibration and compensation circuits to give it excellent performance in a wide environmental range from -40 to +105°C.

Also included is 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 you can orient the board.

For the FeatherWings, both sensors are connected over the shared I2C bus, so you can use it with any and all Feathers! We also break out the interrupt pins and address-selection jumpers in case you want multiple Feathers or have I2C address conflicts. We've got both Arduino (C/C++) and CircuitPython libraries available so you can use it with any Feather board and get data readings in under 5 minutes. Four mounting holes make for a secure connection.

To make getting started fast and easy for non-Feather use, we placed the sensors on a compact breakout board with voltage regulation and level-shifted inputs. That way you can use them with 3V or 5V power/logic devices without worry. To make usage simple, we expose only the I2C interface and some interrupt pins from each chip. The breakout comes fully assembled and tested, with some extra header so you can use it on a breadboard. Four mounting holes make for a secure connection.

For the breakouts, since the sensors are wired together over I2C, you can easily connect it up with two wires (plus power and ground!).  We've even included SparkFun qwiic compatible STEMMA QT connectors for the I2C bus so you don't even need to solder! Just wire up to your favorite micro like the STM32F405 Feather with a plug-and-play cable to get 9 DoF data ASAP. You can change the I2C addresses on the back using the solder jumpers to have two of these sensor boards on one bus.

This guide was first published on Jun 17, 2020. It was last updated on Jun 17, 2020.
This page (Overview) was last updated on Jul 15, 2020.