Data Sheet
October 2017  BNO080 Datasheet  1000-3927 
www.hillcrestlabs.com  © 2017 Hillcrest Laboratories, Inc. All rights reserved.  30 / 57 
2  Sensor Data Processing 
The BNO080 analyzes the data from the 3-axis accelerometer, 3-axis gyroscope and 3-axis magnetometer. It 
manages the various sensors, reads data, and provides a number of outputs to the host. The BNO080 processes 
motion relative to a frame of reference. It has no knowledge of the orientation of sensors within the device and 
must be configured to conform to the desired frame of reference of the device. While the BNO080 is not 
necessarily used within Android systems, the frame of reference defined in the Android specification is used by 
the BNO080 software. In Android, the device frame of reference is represented as X axis horizontal, positive to 
the right, Y axis vertical, positive along the face of the device and Z axis positive towards the outside of the front 
face of the device. The frame of reference is shown in Figure 2-1.  
Figure 2-1: Android co-ordinate system 
The BNO080 can be mounted within the device in any orientation that allows the PCB to be laid out efficiently. 
The BNO080 sensor orientation is provided in Figure 4-1.  
The BNO080 needs to be configured to understand what the orientation is relative to the device frame of 
reference. This is achieved by modifying either the static calibration record if the device is passed through a 
calibration step or by modifying the sensor orientation records. Sensor orientation is discussed further in section 
4. 
2.1  Motion Outputs 
Motion outputs allow applications to understand the motion being applied to the device as measured by BNO080. 
2.1.1 Acceleration Outputs 
The 3-axis accelerometer measures the acceleration of the device (note that the accelerometer will measure 
gravity as acceleration). BNO080 calibrates the accelerometer output to improve the data reported. BNO080 will 
report this acceleration aligned to the coordinate frame of the device. BNO080 can (after fusing data with the 
gyroscope) separate gravity from this acceleration, thus providing the BNO080 with the following acceleration 
outputs: 
•  Calibrated Acceleration (m/s
2
). Acceleration of the device including gravity 
•  Linear acceleration (m/s
2
). Acceleration of the device with gravity removed 
•  Gravity (m/s
2
) 
•  Raw uncalibrated accelerometer data (ADC units). Used for testing 
Note that for raw data to be transmitted the accelerometer must be enabled by a separate set feature request, i.e. 
the raw sensor listens to an already configured sensor. The rate specified in the raw sensor set feature request 
cannot be higher than the underlying sensor configuration. The raw data will either be delivered at the same rate 
as the underlying sensor or at the rate requested (within the constraints of rate decimation). 










