2018-02-23 02:13 AM
Hi everybody,
in our application we use the LIS2DS12 sensor and we would like to perform a continuous long term data acquisition at high data rate. In order to achieve it, we use the LIS2DS12 in Continuous mode at 6400 ODR. The used communication is 4 wired SPI at 5 MHz. The FIFO_THS is set to be 128 and INT1_THS is activated. Until this point the chip works perfectly, I got the external interrupt, when there is 128 sample in the FIFO and I can read these X-Y-Z samples from the FIFO correctly and convert them into engineering format (IF_ADD_INC is enabled). During the tests we observed that the data is discontinuous and it missis 7-8 samples between the adjecent 128 X-Y-Z readouts. This 7-8 missing sample is corresponds to the time while I read the FIFO via SPI. The calculation: (1 cmd byte+128samples*6byte)*8bit*1/5MHz = 1.23 msec <=> 1/6400*8 sample = 1.25 msec. It seems us that the chip freezes the data acquisition during the read process (BDU is set to 0). Had anyone a similar observation? Because the datasheet doesn’t mention any freeze in the measurement during the readout process and it doesn’t declare that the readout should last less than 1 ODR time. Thank you in advance for any help!2018-09-21 04:15 AM
I asked our SW guru and he says: "this part behaves terrible" and he reads it only in Bypass mode, which is power hungry for battery operated device because of micro core active with high speed clock. I'm surprised there's no answer to date. I only started with this part recently. IO and Core should be independent. Only thing coming to mind is that high activity on I/Os does not allow to load new samples to FIFO buffer. I will try in my new prototype to write my own readout code with 'chopping' the readout in chunks smaller than sampling period, allowing FIFO update. Good if that's the case. Did you try BDU on? This may help synchronising the access to FIFO (only one update, when all channels are sampled). Cheers. Tom
2018-09-21 06:50 AM
Yes, please try to reduce number of samples to read within 1/ODR period.