Virtual reality is in, but you shouldn’t have to drop hundreds of dollars to gain access to the technology behind it. Luckily, that’s where the SparkFun VR IMU Breakout comes in. At its heart is Bosch’s BNO080, a combination triple-axis accelerometer/gyro/magnetometer SiP, packaged with a 32-bit ARM Cortex M0+. The BNO080 Inertial Measurement Unit (IMU) produces accurate rotation vector headings, excellently suited for VR and other heading applications, with a static rotation error of two degrees or less. The VR IMU is exactly what we’ve been waiting for: All the sensor data is combined and drift-corrected into meaningful, accurate IMU information. It’s perfect for any project that needs to sense orientation or motion. This IMU breakout board has also been equipped with two I2C Qwiic connectors, in order to make interfacing with the tiny, QFN package a bit easier. It’s part of SparkFun’s Qwiic connect system, so you won’t have to do any soldering to figure out how things are oriented. However, we still have broken out 0.1"-spaced pins in case you prefer to use a breadboard.
The BNO080 was designed to be implemented in Android-based cellular phones to handle all the computations necessary for virtual reality goggles using only your phone. The sensor is quite powerful, and with power comes a complex interface. Thanks to the solder jumpers on the board, you will be able to select between two different I2C addresses, but if I2C is not your first communication choice, the sensor is capable of communicating over SPI and UART as well! We’ve also written an I2C-based library that provides the rotation vector (the reading most folks want from an IMU) as well as acceleration, gyro and magnetometer readings, step counting, activity classifier (such as riding a bike) and calibration.
The SparkFun Qwiic connect system is an ecosystem of I2C sensors, actuators, shields and cables that make prototyping faster and less prone to error. All Qwiic-enabled boards use a common 1mm pitch, 4-pin JST connector. This reduces the amount of required PCB space, and polarized connections mean you can’t hook it up wrong.
Note: This is the same “High Precision” VR IMU that SparkX produced, not the original version that preceded it without the on-board 32kHz crystal.
Get Started with the SparkFun VR IMU Breakout Guide
- Operating Voltage: 1.65V - 3.6V
- I2C (Default): Up to 400kHz
- SPI: Up to 3MHz
- UART: 3Mbps
- Rotation Vector
- Dynamic Error: 3.5°
- Static Error: 2.0°
- Gaming Rotation Vector
- Dynamic Error: 2.5°
- Static Error: 1.5°
- Heading Drift: 0.5° / min
- Geomagnetic Rotation Vector
- Dynamic Rotation Error: 4.5°
- Static Rotation Error: 3.0°
- Gravity Angle Error: 1.5°
- Linear Acceleration Accuracy: 0.35m/s2
- Accelerometer Accuracy: 0.3m/s2
- Gyroscope Accuracy: 3.1° / sec
- Magnetometer Accuracy: 1.4µT
- 2x Qwiic Connection Ports