cancel
Showing results for 
Search instead for 
Did you mean: 

How can I determine the value of the register ACT_DUR for a given ODR and a given desired return-to-sleep duration for LIS3DH?

IBuli.1
Associate

In the data sheet, it is written: Sleep-to-wake, return-to-sleep duration

1 LSb = (8*1[LSb]+1)/ODR. How should I interpret that. It seems equation but is it? If one solves with respect to 1LSB, he/she would get: 1LSB = 1/(ODR-8) but it makes no sense for ODR=1Hz. I saw in some examples that a value of 0x20 at ODR=100Hz gives 5s. I was looking but I have not found a clear explanation how to determine the value of the register neither in the data sheet not in the AN3308, where this register is also named INACT_DUR.

2 REPLIES 2
Eleon BORLINI
ST Employee

Hi @IBuli.1​ , not clear that datasheet statement for low ODR, but from the application note the duration time for the interrupts in general is the following. You can try with these values. Regards

0693W000000UW5hQAG.png

IBuli.1
Associate

Thanks, Eleon,

I have used this table to define the content of the INTx_DURATION registers. For them, it is written 1LSb=1/ODR, so the value-to-time conversion is N/ODR indeed.

However, why is the description for ACT_DUR different? Besides the description, there is one more difference - I see that the INTx_DURATION values are 7-bit values, while the ACT-DUR is an 8-bit value. If this does not simply expand the range of possible values, it is perhaps related to the different register content description? Regards!