SparkFun
SparkFun VR IMU Breakout - BNO086 (Qwiic)
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 I...
Get notified when back in stock
- Operating Voltage
- 2.4V - 3.6V
- Typically 3.3V via Qwiic cable
- 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°
- Dynamic 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
- I2C Address: 0x4B (default), 0x4A
- I2C Pull-Up Resistors (2.2kΩ)
- Power LED
- Jumpers
- Power LED
- I2C Pull-up Resistors
- Address Select
- Protocol Selection 0
- Protocol Selection 1
- Board Dimensions: 1.0in. x 1.2in. (25.4mm x 30.48mm)
- Weight: 3g
- Schematic
- Eagle Files
- Board Dimensions
- Hookup Guide
- BNO086
- Qwiic Page
- Arduino Library
- GitHub Hardware Repo
Jargon buster
Plain-language definitions for the technical terms used above.
- breakout
- A breakout board carries a small or fine-pitched component and brings its connections out to standard, breadboard- and header-friendly pins. Describing a part as a breakout means it can be wired into a project without soldering directly to the component's tiny contacts.
- Gravity
- Gravity is DFRobot’s plug-in connector system for sensors, motors and modules, using standard cables to reduce loose jumper wiring. It matters because Gravity-compatible parts can connect directly to these ports, while non-Gravity parts may need adapters or manual wiring.
- Gyroscope
- A gyroscope measures rotation, such as how fast a board is turning around its X, Y, and Z axes. This matters for projects like gesture controls, balancing robots, and motion tracking where tilt or rotation changes need to be detected.
- I2C
- I2C is a two-wire communication bus used by many sensors and small modules. It matters because several I2C devices can share the same two wires, but each device needs a compatible address and your controller must support I2C.
- I2C address
- An I2C address is the number a device uses so a microcontroller can tell it apart from other devices on the same I2C bus. It matters because two devices with the same fixed address may conflict if used together.
- IMU
- An IMU (Inertial Measurement Unit) combines motion sensors, typically an accelerometer and gyroscope and sometimes a magnetometer, to measure movement and orientation. It can sense motion, tilt, vibration, rotation, and changes in direction, which is useful for tasks such as navigation, stabilisation, gesture detection, and asset tracking.
- LED
- A light-emitting diode (LED) is a small electronic component that emits light when current flows through it in the correct direction. Because it only conducts one way, its polarity matters, and a through-hole LED must be soldered the correct way around to light up.
- magnetometer
- A sensor that measures magnetic fields, often used to work out compass direction. It matters because nearby magnets, motors, or metal objects can affect readings and may require calibration.
- PCB
- A printed circuit board (PCB) is a board, usually rigid, with etched copper tracks that connect electronic components together without loose wiring. Components are mounted on the board and signals route between them through the copper layout.
- Qwiic
- Qwiic is a plug-in connector system for I2C devices that uses small 4-pin cables, so you can connect compatible sensors without soldering. It matters because your controller or adapter also needs Qwiic, or you will need a cable or breakout to wire it up.
- SPI
- A fast serial communication bus often used for displays, memory cards, and sensors. It matters because SPI devices need specific pins for clock and data, plus a separate chip-select line for each device.
- UART
- UART is a simple asynchronous serial interface that sends data over separate transmit and receive wires, usually labelled TX and RX, with both ends set to the same baud rate. It is a common way for microcontrollers and other serial devices to exchange data.
Find this product in
Sensors & Input
SparkFun VR IMU Breakout BNO086 Schematic
Schematic · 193.7 KB · Click any page to view full size
BNO086 Sensor Datasheet
Datasheet · 1.4 MB · Click any page to view full size
BNO08X Sensor Calibration Procedure
User Guide · 306.4 KB · Click any page to view full size
BNO080 to BNO085 Migration Guide
User Guide · 911.5 KB · Click any page to view full size
BNO080/BNO085 Tare Function Usage Guide
User Guide · 221.9 KB · Click any page to view full size
Sensor Hub Transport Protocol
User Guide · 278.9 KB · Click any page to view full size
Supplier page — sparkfun.com
Supplier Description · 1.4 MB · Click any page to view full size
Resources & Downloads
Guides, code examples, and more
Source Code
Open-source libraries, firmware & example projects for this product
This repo houses all of the SFE Fritzing parts for use in diagrams in tutorials. If you create a new part in Fritzing that correlates to an SFE part, please add it here so others may use it and to avoid duplication.
71b17bb
almost 2 years ago
· 339 commits
- kits Include SparkFun Inventor's Kit V4.1 over 2 years ago
- parts Add Horizontal and Vertical Qwiic Connector and Cable to Breadboard Half (Top View) about 6 years ago
- products Update 13664_sfe_samd21_mini_breakout.fzpz almost 2 years ago
- templates Renamed about 11 years ago
- License.md Create License.md about 7 years ago
- README.md Update README.md over 7 years ago
- SparkFun Plus.fzbz First Pass on SparkFun Plus bin file over 6 years ago
- SparkFun_Plus.png Adding png for fzbz use over 6 years ago
An Arduino Library for the BNO08x IMU combination triple axis accelerometer/gyro/magnetometer packaged with an ARM Cortex M0+ running powerful algorithms.
fd0149c
almost 2 years ago
· 78 commits
- .github Create add_issue_to_project.yml almost 3 years ago
- examples SPI pin-choice for micromod machine learning almost 2 years ago
- src CalibrationSettings example complete over 2 years ago
- .gitattributes example 1 working almost 3 years ago
- .gitignore example 1 working almost 3 years ago
- CONTRIBUTING.md Update CONTRIBUTING.md almost 3 years ago
- ISSUE_TEMPLATE.md example 1 working almost 3 years ago
- keywords.txt updated calibration function names in keywords over 2 years ago
- library.properties bumping version to 1.0.6 for release almost 2 years ago
- LICENSE.md More attribution notes added almost 3 years ago
- README.md Attribution for geomagnetic rotation vector code over 2 years ago
The BNO086 IMU has a combination triple axis accelerometer/gyro/magnetometer packaged with an ARM Cortex M0+ running powerful algorithms.
fc8ed69
26 days ago
· 36 commits
- .cache Add Circuit Diagrams for UART and SPI, link Fritzing Part over 2 years ago
- .github Update mkdocs.yml 26 days ago
- docs Update processing_example.md almost 2 years ago
- Hardware production panel and gerbers v10 almost 3 years ago
- overrides Push Initial Docs to Repo almost 3 years ago
- Software Update Modified Example and Add Notes over 2 years ago
- .gitignore Silk updated to BNO086 and vectors about 3 years ago
- LICENSE.md Create LICENSE.md about 3 years ago
- mkdocs.yml Update mkdocs.yml 26 days ago
- README.md Minor Clean up over 2 years ago
Related Tutorials
Free guides on learn.littlebird.com.au