Favorited
Favorite
3
Introduction
Note: Unfortunately the BNO080 is EOL. For users looking for a replacement, try checking out the Qwiic VR IMU Breakout (BNO086) that is available as a drop-in replacement. There are also a few additional features available for the BNO086. For more information, check out the
SparkFun VR IMU Breakout - BNO086 (Qwiic) Hookup Guide.
Bosch's BNO080 is a combination triple axis accelerometer/gyro/magnetometer packaged with an ARM Cortex M0+ running powerful algorithms. 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 2 degrees or less. It’s 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. We've taken this IMU and stuck it on a Qwiic enabled breakout board, in order to make interfacing with the tiny, QFN package a bit easier to connect.
Retired
SEN-14686
The SparkFun VR IMU Breakout is a cutting edge triple axis accelerometer/gyro/magnetometer all in a single package that you c…
5
Retired
In this hookup guide, we'll connect our sensor up to our microcontroller of choice and separately read the rotation vectors (which is what we will mainly want), acceleration vectors, gyro values, and magnetometer vectors. We'll check out how to implement the step counter on the BNO080 in order to use it as a pedometer. We'll also read Q values and various other metadata from the sensor. Knowing what activity you're performing is important so we'll learn how to classify what activity the IMU is performing (i.e. Sitting still, moving, biking, walking, running, etc...) and how confident the IMU is that each activity is being performed. The examples will also show how to calibrate our hardware to give us the most accurate readings possible. Printing out raw packets will also be examined for debugging purposes. Finally, we'll examine how to configure the sensor on different I2C ports and addresses. A bonus example is provided in Processing to show us how to use quaternion data to orient a cube.
Required Materials
To get started, you'll need a microcontroller to, well, control everything.
In stock
DEV-13975
The SparkFun RedBoard combines the simplicity of the UNO's Optiboot bootloader, the stability of the FTDI, and the shield com…
50
In stock
DEV-13907
The SparkFun ESP32 Thing is a comprehensive development platform for Espressif’s ESP32, their super-charged version of the …
69
Retired
WRL-13774
Particle's IoT (Internet of Things) hardware development board, the Photon, provides everything you need to build a connected…
32
Retired
Retired
DEV-13825
Everyone knows and loves Raspberry Pi, but what if you didn't need additional peripherals to make it wireless. The Raspberry …
92
Retired
Now to get into the Qwiic ecosystem, the key will be one of the following Qwiic shields to match your preference of microcontroller:
In stock
DEV-14459
The SparkFun Qwiic HAT for Raspberry Pi is the quickest and easiest way to make your way into the Qwiic ecosystem and still u…
5
Only 2 left!
DEV-14352
The SparkFun Qwiic Shield is an easy-to-assemble board that provides a simple way to incorporate the Qwiic Connect System wit…
9
Retired
DEV-14477
The SparkFun Qwiic Shield for Photon is an easy-to-assemble board that provides a simple way to incorporate the Qwiic System …
Retired
You will also need a Qwiic cable to connect the shield to your accelerometer, choose a length that suits your needs.
In stock
PRT-14427
This is a 100mm long 4-conductor cable with 1mm JST termination. It’s designed to connect Qwiic enabled components together…
In stock
PRT-14426
This is a 50mm long 4-conductor cable with 1mm JST termination. It’s designed to connect Qwiic enabled components together …
Retired
PRT-14428
This is a 200mm long 4-conductor cable with 1mm JST termination. It’s designed to connect Qwiic enabled components together…
Retired
Retired
PRT-14429
This is a 500mm long 4-conductor cable with 1mm JST termination. It’s designed to connect Qwiic enabled components together…
1
Retired
Suggested Reading
If you aren't familiar with the Qwiic system, we recommend reading here for an overview.
We would also recommend taking a look at the following tutorials if you aren't familiar with them. We also delve into Processing in this tutorial, if you aren't familiar, check out the below tutorial on Processing.
Serial Communication
Asynchronous serial communication concepts: packets, signal levels, baud rates, UARTs and more!
Gyroscope
Gyroscopes measure the speed of rotation around an axis and are an essential part in determines ones orientation in space.
I2C
An introduction to I2C, one of the main embedded communications protocols in use today.