cancel
Showing results for 
Search instead for 
Did you mean: 

LIS3DH inertial interrupt cannot work properly after reading the acceleration value

mteaching
Associate III
Background:
Our project utilized ST's IMU sensor LIS3DH, and according to business requirements, we used click interrupt and initial interrupt respectively
  • The sampling frequency is 10Hz
  • We set the duration of the Initial interrupt to 120 to generate an interrupt every 12 seconds
  • We have also enabled internal high pass filter mode
Problem:
Through the above configuration, both interrupts can be responded to separately.
But when the click interrupt occurs, we want to read the acceleration of the XYZ axis of the IMU sensor.
Once I do this, the Inertial interrupt will no longer occur, giving me the feeling that the internal counter is reset every time when the acceleration value is read. Can this problem be avoided?
 
The configuration of the sensor is as follows:

 

 

(address : 0x00- 0x0F) 00 00 00 00 00 00 00 ff  00 00 00 00 00 00 00 33 |........ .......3
(address : 0x10- 0x1F) 0f 86 6f 21 a0 22 20 27  1b a8 70 73 c0 00 90 00 |..o!." ' ..ps....
(address : 0x20- 0x2F) 27 05 40 00 0a 82 00 ff  00 0a 00 fe 00 3e 00 20 |'.@..... .....>. 
(address : 0x30- 0x3F) 2a 25 01 78 00 00 00 00  15 00 d6 60 00 00 00 00 |*%.x.... ...`....

 

 

Thank you and best regards,

Bruce

1 REPLY 1
MBOSC.13
ST Employee

you mention to use click interrupt and initial interrupt respectively.

In your configuration CTRL_REG3 (22h) = 40h --> this means that only IA1 interrupt is enabled while Click interrupt on INT1 is disabled.

I don't know what you mean for "initial" interrupt  or which function you are using to get interrupt after 120 samples. My suggestion is to review sensor configuration according to your use case.