cancel
Showing results for 
Search instead for 
Did you mean: 

Trouble clearing the interrupt pin on the H3LIS100 accelerometer chip.

rod_gilchrist
Associate II
Posted on June 13, 2017 at 02:32

Hi, I'm having some difficulty clearing the interrupt pin on the H3LIS100. I have it set to generate and interrupt on data ready. I am also using the LIS2D chip, which has a somewhat similar interface, and I can clear that interrupt by reading the INT1_SRC register (for an over threshold interrupt), but neither reading the INT1_SRC nor the actual data registers seems to clear the interrupt pin for the data ready interrupt condition on the H3LIS3100 chip. Going to power down state does clear the interrupt but that is not too useful when taking repeated data samples.

3 REPLIES 3
Miroslav BATEK
ST Employee
Posted on June 13, 2017 at 09:32

Reading of all three output registers (0x29, 0x2B, 0x2D) clears the data ready interrupt signal.

rod_gilchrist
Associate II
Posted on June 13, 2017 at 18:15

And I confirm that that works... I had a bug related to sample counts that prevented the read the three location code from always running.

I now read all three data values whenever the interrupt line goes high.

Posted on June 15, 2017 at 22:00

Actually the real answer is a bit more complicated than this. I was encountering a chip state where the interrupt line would go hi and only a power cycle would clear it. I believe that was because an i2c transaction got interrupted and did not complete. Subsequently pretty much nothing I did seemed to affect the chip.

I have now found that cycling the i2c clock line 9 times (to complete and transaction that the chip might think was still in progress) and then reading the x, y and z data will recover from the stuck interrupt line state.