Information

BMA250E
Data sheet
Page 40
BST-BMA250E-DS004-06 | Revision 1.3 | April 2015 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.
4.7.9 Low-g interrupt
This interrupt is based on the comparison of acceleration data against a low-g threshold, which
is most useful for free-fall detection.
The interrupt is enabled (disabled) by writing ´1´ (´0´) to the (0x17) low_en bit. There are two
modes available, ‘single’ mode and ‘sum’ mode. In ‘single’ mode, the acceleration of each axis
is compared with the threshold; in ‘sum’ mode, the sum of absolute values of all accelerations
|acc_x| + |acc_y| + |acc_z| is compared with the threshold. The mode is selected by the
contents of the (0x24) low_mode bit: ´0´ means ‘single’ mode, ´1´ means ‘sum’ mode.
The low-g threshold is set through the (0x23) low_th register. 1 LSB of (0x23) low_th always
corresponds to an acceleration of 7.81 mg (i.e. increment is independent from g-range setting).
A hysteresis can be selected by setting the (0x24) low_hy bits. 1 LSB of (0x24) low_hy always
corresponds to an acceleration difference of 125 mg in any g-range (as well, increment is
independent from g-range setting).
The low-g interrupt is generated if the absolute values of the acceleration of all axes (´and´
relation, in case of single mode) or their sum (in case of sum mode) are lower than the
threshold for at least the time defined by the (0x22) low_dur register. The interrupt is reset if the
absolute value of the acceleration of at least one axis (´or´ relation, in case of single mode) or
the sum of absolute values (in case of sum mode) is higher than the threshold plus the
hysteresis for at least one data acquisition. In bit (0x09) low_int the interrupt status is stored.
The relation between the content of (0x22) low_dur and the actual delay of the interrupt
generation is: delay [ms] = [(0x22) low_dur + 1] 2 ms. Therefore, possible delay times range
from 2 ms to 512 ms.