Data Sheet

BNO055
Data sheet
Page 43
BST-BNO055-DS000-14 | Revision 1.4 | June 2016 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal such as copying and passing on
to third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice.
3.8.2.4 Gyroscope High Rate Interrupt
This interrupt is based on the comparison of angular rate data against a high-rate threshold
for the detection of shock or other high-angular rate events. The principle is made clear in
Figure 3 below:
Figure 3: High rate interrupt
The high-rate interrupt is enabled (disabled) per axis by writing ´1´ (´0´) to bits
GYRO_HIGH_RATE in the INT_EN register and for each axis by writing to the HR_X_AXIS,
HR_Y_AXIS, and HR_Z_AXIS, respectively in the GYR_INT_SETTING register. The high-
rate threshold is set through the HR_<axis>_Threshold bits in the appropriate
GYR_HR_<axis>_SET register. The meaning of an LSB of HR_<axis>_Threshold depends
on the selected °/s-range: it corresponds to 62.5°/s in 2000°/s-range, 31.25°/s in 1000°/s-
range, 15.625°/s in 500°/s -range …). The HR_<axis>_Threshold register setting 0
corresponds to 62.26°/s in 2000°/s-range, 31.13°/s in 1000°/s-range, 15.56°/s in 500°/s-
range …. Therefore the maximum value is 1999.76°/s in 2000°/s-range (999.87°/s 1000°/s-
range, 499.93°/s in 500°/s -range …).
A hysteresis can be selected by setting the HR_<axis>_THRES_HYST bits. Analogously to
threshold, the meaning of an LSB of HR_<axis>_THRES_HYST bits is °/s-range dependent:
The HR_<axis>_THRES_HYST register setting 0 corresponds to an angular rate difference
of 62.26°/s in 2000°/s-range, 31.13°/s in 1000°/s-range, 15.56°/s in 500°/s-range …. The
meaning of an LSB of HR_<axis>_THRES_HYST depends on the selected °/s-range too: it
corresponds to 62.5°/s in 2000°/s-range, 31.25°/s in 1000°/s-range, 15.625°/s in 500°/s -
range …).
The high-rate interrupt is generated if the absolute value of the angular rate of at least one of
the enabled axes (´or´ relation) is higher than the threshold for at least the time defined by
the GYR_DUR_<axis> register. The interrupt is reset if the absolute value of the angular rate
of all enabled axes (´and´ relation) is lower than the threshold minus the hysteresis. In bit
GYR_HIGH_RATE in the INT_STA the interrupt status is stored. The relation between the
content of GYR_DUR_<axis> and the actual delay of the interrupt generation is delay [ms] =
[ GYR_DUR_<axis> + 1] * 2.5 ms. Therefore, possible delay times range from 2.5 ms to 640
ms.