2026-03-19 6:18 AM
Hi,
I'm using the LIS2DUXS12 in FIFO Stream mode with DEC_TS_32. FIFO watermark is set to 64. Looks like every ~17 FIFO reads (~1055 XL samples), exactly 1 accelerometer sample is lost. The pattern is consistent and repeatable.
Each FIFO read of 64 entries normally contains 62 XL samples + 2 timestamp tags. However, every 17th read contains 63 XL + 1 timestamp tag. Looks like before this batch with 63 XL samples, there is 1 XL sample gap in data.
I use only the timestamp present in the FIFO batch to calculate timestamp for each sample. And with that approach samples in that FIFO batch aligns with next FIFO batch exactly - no gaps, no overwriting, fixed period.
So despite the fact that this FIFO batch contains one XL sample more than the other, there's still a gap in data.
Configuration:
- ODR: 200 Hz (HP mode)
- FIFO mode: Stream (continuous)
- bdr_xl: ODR
- dec_ts: DEC_TS_32
- xl_only_fifo: 1
- FIFO watermark: 64
I couldn't find errata for LIS2DUXS12.
Questions:
1. Is this a known hardware behavior — does the TS tag replace (instead of accompany) the triggering XL sample at certain FIFO alignment boundaries?
2. Is there a recommended workaround?
2026-03-27 3:16 AM
Hi @tomny ,
FIFO watermark takes into consideration also timestamps batching, the XL_ONLY_FIFO bit avoids to store the other signals like temperature or Qvar.
So you need to modify FIFO watermark to accommodate the reading of both XL and TS. For example: based on your description, reading always 2 TS you will read for each TS (tag + timestamp) 8 times the 4 XL data (tag + xyz) --> FIFO watermark: 68
Now, you are forgetting to read 4 sample each FIFO read, so every 16 times you have a FIFO read with only 1 TS.