Skip to main content
Visitor II
January 25, 2021
Solved

LIS2DE12 generating interrupts at low ODR

  • January 25, 2021
  • 2 replies
  • 899 views

I am trying to get the LIS2DE12 to generate an interrupt when shaken. I have connected the INT1 pin to an open drain I/O pin of my MCU. I an get it to generate the desired interrupt with some reliability. However, when it is just sitting still, it generates interrupts randomly. The ODR is 10 Hz. How might I stop this?

Thanks in advance,

Rob

    This topic has been closed for replies.
    Best answer by RKeit.1

    Hello Eleon,

    Thanks for the reply.

    I think I have cracked the problem. The starting point is the high pass filter example 6.3.3 in AN3308. It seems the key to getting rid of the spurious interrupts is to read the reference register. It works for what I need but I am not sure I understand it. I will keep trying.

    Rob

    2 replies

    ST Employee
    January 27, 2021

    Hi @RKeit.1​ ,

    which threshold did you set for the event recognition? Data might cross the threshold (on specific axis) if it is too low / comparable with the noise.

    You could also try latching the interrupt or disabling the BDU bit, to check if you can get different behavior of the interrupt, or try setting the Interrupt2 instead of the Interrupt1.

    I suggest you to check you correctly configured the device comparing you code with the example on Github using an interrupt (lis2de12_filter_hp_rst_on_int.c)

    Let me know if you can make further progresses with this issue.

    -Eleon

    RKeit.1AuthorAnswer
    Visitor II
    January 27, 2021

    Hello Eleon,

    Thanks for the reply.

    I think I have cracked the problem. The starting point is the high pass filter example 6.3.3 in AN3308. It seems the key to getting rid of the spurious interrupts is to read the reference register. It works for what I need but I am not sure I understand it. I will keep trying.

    Rob