2021-11-18 02:02 AM
Hello,
I want to monitor signals in range 0.5 - 80 Hz to wake up a microcontroller on INT1 pin when acceleration is above a certain threshold.
My setup is :
ODR = 200Hz
FS = 2G
MODE = Low power mode 4, Low Noise
BW_FILT = 00 --> ODR/2 --> 100Hz
WK_THS = 1 --> 31.25 mg
FDS = 0 --> LP Filter
interrupts_enable = 1 --> ENABLE INTERRUPT
int1_wu = 1 --> Route wake up on INT1
In this configuration I have a LP filter, ODR is 200 Hz so BW according with BW_FILT is 100 Hz.
The wake up interrupt is routed to INT 1 and enabled and the threshold is 31.25 mg.
If no acceleration is applied I have 1G on z axis due to the gravity, acceleration on x and y axis are below 31.25mg.
My question is why with a LP filter I do not have a wake up interrupt due to the gravity ?
I was expected to have continuous triggers on INT1 due to the gravity.
Reagards,
Riccardo
Solved! Go to Solution.
2021-11-21 11:59 PM
Hello,
thank you for the app note, it was very useful.
I didn't have continuous WK interrupt because USR_OFF_ON_WU was set to 0 so the filter path for the wake up function was high pass even if FDS was 0.
Thanks for the support.
Regards,
Riccardo
2021-11-18 09:51 AM
Hi Riccardo, you don't have continuous wake up triggers on INT1 since the interrupt rises when the 31.25 mg threshold is down to up crossed (for a specific duration), as shown in the picture:
See the app note https://www.st.com/resource/en/application_note/an5038-lis2dw12-alwayson-3d-accelerometer-stmicroelectronics.pdf
You might apply the HP filter if you want to rule out the 1g gravity constant acceleration.
\Dk
2021-11-21 11:59 PM
Hello,
thank you for the app note, it was very useful.
I didn't have continuous WK interrupt because USR_OFF_ON_WU was set to 0 so the filter path for the wake up function was high pass even if FDS was 0.
Thanks for the support.
Regards,
Riccardo
2021-11-22 07:43 AM
Thank you Riccardo @RStra for having shared the solution to the Community!
-Eleon