Data Sheet
October 2017 BNO080 Datasheet 1000-3927
www.hillcrestlabs.com © 2017 Hillcrest Laboratories, Inc. All rights reserved. 31 / 57
2.1.2 Angular Velocity Outputs
The 3-axis gyroscope measures the angular velocity of the device. The angular velocity is reported as rotations
around the X, Y, Z axes as depicted in Figure 2-1. A positive value is reported for counter-clockwise rotations.
BNO080 calibrates this data to improve the measurement and provides the following outputs:
• Calibrated gyroscope (rad/s). The angular velocity of the device
• Uncalibrated gyroscope (rad/s). Angular velocity without bias compensation. This output is required for
Android 4.4 compatibility. The bias is reported as a second parameter
• Raw uncalibrated gyroscope (ADC units). Data direct from the gyroscope, used for testing
Note that for raw data to be transmitted the gyroscope 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).
2.1.3 Magnetometer Processing
While not actually a motion sensor, the magnetometer can be used to detect motion. The magnetometer
measures the surrounding magnetic field and is used to determine absolute orientation as well as support other
fusion operations. Absolute orientation can be thought of as determining which direction is magnetic north and
evaluating the sensors orientation with respect to north.
The complication with measuring the magnetic field is that the field is distorted by the proximity of ferrous or
magnetic material. The distortion caused by these materials is often referred to as the soft-iron and hard-iron
effect. To remove this distortion the device must be moved sufficiently through all 3 axes (X, Y and Z) of 3-
dimensional space. An indication of the degree of calibration is reported in the magnetometer reports accuracy
field.
BNO080 provides the following magnetic field measurement outputs:
• Magnetic field calibrated (in µTesla). The fully calibrated magnetic field measurement.
• Magnetic field uncalibrated (in µTesla). The magnetic field measurement without hard-iron offset applied,
the hard-iron estimate is provided as a separate parameter.
• Raw magnetic field measurement (in ADC units). Direct data from the magnetometer. Used for testing.
2.2 Orientation Outputs
One of the primary outputs of BNO080 is an estimation of the device orientation. Fusing data from
accelerometers, gyroscopes and magnetometers has a rich history of usage for estimating orientation. BNO080
provides multiple estimates that have different tradeoffs as described below (note that the term rotation vector
used below is derived from Google’s definition in Android 4.4).
2.2.1 Geomagnetic Rotation Vector
The geomagnetic rotation vector is an orientation output that is expressed as a quaternion referenced to magnetic
north and gravity. It is produced by fusing the outputs of the accelerometer and magnetometer. The gyroscope is
specifically excluded in order to produce a rotation vector output using less power than is required to produce the
rotation vector of section 2.2.4. The consequences of removing the gyroscope are:
• Less responsive output since the highly dynamic outputs of the gyroscope are not used
• More errors in the presence of varying magnetic fields
2.2.2 Game Rotation Vector
The game rotation vector is an orientation output that is expressed as a quaternion with no specific reference for
heading, while roll and pitch are referenced against gravity. It is produced by fusing the outputs of the
accelerometer and the gyroscope (i.e. no magnetometer). The game rotation vector does not use the
magnetometer to correct the gyroscopes drift in yaw. This is a deliberate omission (as specified by Google) to
allow gaming applications to use a smoother representation of the orientation without the jumps that an
instantaneous correction provided by a magnetic field update could provide. Long term the output will likely drift in