I'm currently working with an LSM9DS1 and want to read the gyroscope/accelerometer data via FIFO.
I enabled the FIFO in CTRL_REG9 and set FIFO mode in FIFO_CTRL. Everything else regarding the FIFO is set on default. I read the data by accessing the X/Y/Z output registers.
(This might be unrelated but at the moment I'm initializing the registers in order of the data sheet. Therefore I set the gyro before the accelerometer registers. I initialize the gyroscope with an ODR of 59.5 Hz and later the accelerometer with 50 Hz which doesn't seem logical. But I want do set the g scale of the accelerometer in CTRL_REG6_XL and by that automatically set the ODR.)
The problem now is that the read data is not written in the FIFO storage. (When I check the FIFO_SRC register the number of samples in the storage stays 0)
Two interesting things happen:
- if I keep all the settings as they are and only change CTRL_REG9 to bypass-mode I receive the data
- when in fifo-mode some data (about 10 inaccurate numbers) is received in random intervals
Do you have an idea how to solve that problem?
If you need any more information please let me know and thanks in advance