


As the breakout board is rotated, the modeled object rotates as well, providing instant (and much more fun) indication of driver correctness. They have a demonstration for their IMU breakout board that uses data from the sensor to drive a 3D object modeled on the host computer. I could just display the values of the three axes on the target's on-board LCD screen but that is difficult to visualize in general.Īgain, AdaFruit provides a much more satisfying approach. So I have easy access to fused 3D orientation data but I don't know whether those data are correct - i.e., whether my driver is really working. The breakout board containing the BNO055 sensor and Cortex-M0 processor, courtesy AdaFruit The bottom of the BNO055 breakout board and a quarter coin, for comparison, courtesy AdaFruit The device is the "AdaFruit 9-DOF Absolute Orientation IMU Fusion Breakout - BNO055" that puts the Bosch BO055 sensor chip on its own breakout board, with 3.3V regulator, logic level shifting for the I2C pins, and a Cortex-M0 to do the actual sensor data fusion. I plan to use this orientation data in a small robot I am building that uses an STM32 Discovery board for the control system. It is sensor-fusion on a chip (strictly, a System in Package, or SiP), obviating the need to write your own sensor fusion code. You simply configure the sensor to provide the data in the format desired and then read the Euler angles, quaternions, or vectors at the rate you require. This IMU device takes accelerometer, magnetometer, and gyroscope data inputs and produces fused values indicating the absolute orientation of the sensor in 3D space. This can be due to the existence of special applications that run only (or already) on the host, in particular.įor example, I recently created an Ada driver for a 9-DOF inertial measurement unit (IMU) purchased from AdaFruit. Although some boards do have amazing graphics capabilities, in some cases you need to have the application on the target interact with applications on the host.
#Lunar lander model software
One of the interesting aspects of developing software for a bare-board target is that displaying complex application-created information typically requires more than the target board can handle.
