cancel
Showing results for 
Search instead for 
Did you mean: 

LPS22HB PLE interrupt not working

raghu tumati
Associate II
Posted on July 15, 2018 at 05:18

Hi 

I am working with the LPS22HB eval board from ST and trying to generate an interrupt when the pressure drops suddenly.  So according to the data sheet this would be a PLE event (2nd bit of 0x0B register) 

Below are my register settings -

 reg 0x10 - 0x50

reg 0x12 - 0x03

reg 0x0B - 0x0A

I set the threshold registers 0x0C and 0x0D to the current value of pressure reading. I would expect that the int pin to change state from low to high after creating an external low pressure event but there is no change. Even the interrupt flag IA or PL from reg 0x25 is not set. 

Now to make sure I did not have a bad device, I set the LPS22HB for generating an interrupt for a high pressure event. So I set bit PHE (1st bit in 0x0B reg) and the interrupt IS generated when I create a high pressure event. So everything works fine for a high pressure event interrupt. PH and IA Flag in reg  0x25 is set. 

 reg 0x10 - 0x50

reg 0x12 - 0x03

reg 0x0B - 0x09

The pressure readings when I poll registers 0x28, 0x29, 0x30 are also correct. It is just the low pressure interrupt event the is not working. 

Unfortunately my product needs this low pressure interrupt event the most and LPS22HB would be a no-go if this cannot be fixed. 

This seems like a bug to me. Is there anyone from ST that could look into this? 

Or is there anyone in this forum who got this working? 

2 REPLIES 2

@ST Community​ who is covering MEMS?

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
Miroslav BATEK
ST Employee

It seems the interrupts settings is little bit tricky.

Please check chapter 9.1 in the LPS22HB datasheet.

The interrupt works only in differential mode so you will have to use the AUTOZERO function and adjust the threshold according to the actual pressure.

I think there is also option to change the reference after you enter the AUTOZERO function so you don't need to count with actual pressure, you just set the reference and threshold.