A low cost, but high precision 6-axis inertial measurement unit (IMU) that has 16-bit accelerometer and 16-bit gyroscope for quality output at a great price.
Bosch has a ton of experience with making MEMS sensors – one of our very favorite sensors is the Bosch BNO055 which has accelerometer, gyro and also magnetometer as well as a SAMD21 chip inside that runs a sensor fusion algorithm, which makes it great for projects that want to get going with full orientation data quickly. But you’ll pay for that convenience: the BNO055 costs about $7.50 a hefty BOM cost.
If you’ve already got a microcontroller on your design, say a Cortex M series or ESP32 or other fairly powerful chip with an FPU or secondary core, you can save a bundle by DIY’ing your own sensor fusion. You can even do some very basic orientation sensing with just a 6-axis sensor like this one, or if you want to also fuse in magnetometer data, the BMM150 is a great mini I2C sensor that will work with any Bosch 6-axis IMU – combine with the BMI323 and for about $3 total you can have great 9-DoF sensor.
Then you can use Bosch’s Sensor Fusion Software BSXlite which comes as binary blobs for ARM Cortex chips that take in the raw sensor values and pop out quaternion and Euler angles – you could probably request for them to compile it for another chip family like Tensilica or RISC-V if you like.
The BMI323 has 16-bit data out for both sensors, and FIFO’s so you will get quality data without skipping a sample.
There’s a full datasheet that goes through every setting and register for the BMI323, but if you’d like to skip the low-level implementation part, Bosch has been great for releasing portable C code support for their chips and the BMI3 series has its own GitHub repo with just about all functionality implemented. Note it’s fairly ‘generic’ code, with Linux Kernel headers but otherwise without HAL implementation, so you’ll need to port the common.c file to your platform to read and write I2C or SPI and add chip-specific delay.
If the idea of a low cost IMU has you doing the twist or shaking your arms in excitement, the Bosch Sensortec BMI323 Inertial Measurement Unit is in stock now at Digi-Key, with thousands of pieces ready for instant purchase.
Order today and Digi-Key will package and ship your shipment instantly: you’ll be motion sensing #LikeABosch by tomorrow afternoon.
Adafruit publishes a wide range of writing and video content, including interviews and reporting on the maker market and the wider technology world. Our standards page is intended as a guide to best practices that Adafruit uses, as well as an outline of the ethical standards Adafruit aspires to. While Adafruit is not an independent journalistic institution, Adafruit strives to be a fair, informative, and positive voice within the community – check it out here: adafruit.com/editorialstandards
Stop breadboarding and soldering – start making immediately! Adafruit’s Circuit Playground is jam-packed with LEDs, sensors, buttons, alligator clip pads and more. Build projects with Circuit Playground in a few minutes with the drag-and-drop MakeCode programming site, learn computer science using the CS Discoveries class on code.org, jump into CircuitPython to learn Python and hardware together, TinyGO, or even use the Arduino IDE. Circuit Playground Express is the newest and best Circuit Playground board, with support for CircuitPython, MakeCode, and Arduino. It has a powerful processor, 10 NeoPixels, mini speaker, InfraRed receive and transmit, two buttons, a switch, 14 alligator clip pads, and lots of sensors: capacitive touch, IR proximity, temperature, light, motion and sound. A whole wide world of electronics and coding is waiting for you, and it fits in the palm of your hand.
Have an amazing project to share? The Electronics Show and Tell is every Wednesday at 7pm ET! To join, head over to YouTube and check out the show’s live chat – we’ll post the link there.
Python for Microcontrollers — Python on Microcontrollers Newsletter: CircuitPython 8.1.0 and 8.2.0-beta0 out and so much more! #CircuitPython #Python #micropython @ThePSF @Raspberry_Pi