cancel
Showing results for 
Search instead for 
Did you mean: 

LIS2DW12: FIFO-Threshold-Interrupt Jitters at 1.6kHz

Loris Wyss
Associate II

Hello ST-Community!

When I'm using the LIS2DW12 at ODR=1.6kHz, the Interrupt for reaching the FIFO-Threshold is jittering with 1/ODR, but only if the threshold is greater than 12. If it's less or equal, everything is working fine.

The buffer-Mode is set to FIFO-Mode, but this behaviour also occurs in Continous-Mode.

The Power-Mode is set to High-Performance/Low-Noise.

The Interrupt is routed to the INT1-Pin

The two images show the rising edge on the pin INT1. The time between the two cursors "a" and "b" is 624us (almost 625us), which would equal to 1/ODR (1/1600 = 625E-6)

0690X00000AsP38QAF.png0690X00000AsP33QAF.png

As written, this only happens if ODR is set to 1.6kHz and the FIFO-Threshold is greater than 12.

Does anyone have some further informations regarding this issue?

Thanks in advance for your answers!

Greetings,

Loris

41 REPLIES 41
Eleon BORLINI
ST Employee

Hi @Loris Wyss​ , 12 FIFO samples are 3-axis ACC + 3-axis GYRO data (2 bytes each), so it is a single data refresh. You can try to enable the BDU before setting the configuration of the FIFO (CTRL2 (21h) register, BDU bit). This means that the data are not refreshed until they are not read, or stored in the FIFO... So the data are updated in blocks and this could maybe stabilize the threshold and reduce the jitter. Regards

Loris Wyss
Associate II

Hi @Eleon BORLINI​ , thanks a lot for your answer!

So, if I read your answer correctly, it would mean that I completely misunderstood how the FIFO in the LIS2DW12 works...

From the informations provided by the datasheet I thought, the FIFO would contain only the acceleration data.

Additionly I assumed, that a FIFO-threshold of 12 meant that there is an Interrupt when I have 12 Samples (each consisting of 3 Axis * 2 Bytes/Axis) in the FIFO, which would result in a total of 72 bytes of data.

So... are my thoughts regarding this completely wrong?

Regarding your suggestion, the BDU bit was already set and my issue is still here, no matter if block data update is activated or not...

Thanks and regards,

Loris0690X00000AsSCcQAN.jpg

I'm sorry, the gyro part doesn't make sense :) I was confused from a parallel thread on iNemo FIFO.

Basically you well interpreted the documents, the threshold refers to the complete filling of the 6x12 bytes.

So the BDU has no effect... This is btw a strange behavior and I will check it with our experts. Are there other interrupts enabled except of FIFO threshold one in CTRL4_INT1_PAD_CTRL (23h) register? To try to overcome this unwanted effect, you can maybe try to act on the INT parameters (pulsed/latched, bit LIR of CTRL3 (22h) register)... Regards

Ah ok, so I understood that part correctly...

No, there are no other interrupts enabled in the CTRL4_INT1_PAD_CTRL register.

Setting the interrupt to latched mode doesn't help, the issue is still present.

Thanks alot for checking with your experts!

If I can help you with some further tests, just let me know...

Regards,

Loris

Hi @Eleon BORLINI​ 

Have you got any news regarding this issue?

Regards,

Loris

Hi Loris, unfortunately not, we are not ale to reproduce the issue... Do you have the possibility to check another physically different LIS2DW12 device? Regards

We had this issue with atleast two devices, so it's likely not a defect LIS2DW12...

I made a sample project, where I removed everything unnecessary, so you can check the software implementation.

I also included the relevant part of the schematics.

If it would help you, I could also send you a PCB, with which we had this issue, so you can measure and try yourself (I assume you live in Europe, right?)

Just let me know, if this would be a possibility.

Regards,

Loris

Hi Loris, it would be of great help if you could send us your PCB, if it is not of too much effort for you. Can you however share your application .bin file? I don't use MDK-IAR... Regarding your schematic, and the decoupling capacitors in particular, they are not as the suggested ones... This should not be an issue, but let's take it into account

0690X00000BufSgQAJ.png

My address is:

Eleon Borlini

Tel: +39 02 93519 418

STMicroelectronics, Via Tolomeo, 1

20010 Cornaredo (Mi), Italy

Regards,

Eleon

Loris Wyss
Associate II

Hi Eleon

Thanks for your answer. i attached the .bin file to this answer.

Regarding the Capacitors:

I've seen this as well while checking and we will probably change with the next redesign, but I also assumed, that this isn't the problem.

I will prepare the PCB for shipping and will send it to you tomorrow.

Thanks and regards,

Loris