2020-11-13 12:11 AM
Hi!
I am using a Nucleo-L476RG / X-Nucleo-IKS01A3 / STEVAL-MKI1197V1 setup to get into the LSM6DSO and LSM6DSOX. I did some tests with both of them based on Algobuilder and Unicleo with the DataLogExtended example.
I recognized the following: When I use an interrupt to generate a data-ready signal the frequency of the INT is not exactly matching my ODR configuration.
I tested with 52hz ODR and for the LSM6DSO the rising edge of the interrupt is generated at about 50.7hz and for the LSM6DSOX the interrupt is generated at about 49.5hz
I did those measurements with a Chip Timer and with a logic analyzer with high performance mode enabled on the sensor.
I could not find information in the datasheet about the precision of the ODR or the interrupt. Can you confirm that there is a difference between the configured and the actual ODR? If yes, is there information about the potential range? Or is there maybe something that I did not configure properly?
Best wishes,
Dominik
Solved! Go to Solution.
2020-11-13 02:58 AM
Hi @DWind.1 ,
>> Can you confirm that there is a difference between the configured and the actual ODR?
Yes, there can be a deviation from the nominal value of the ODR. In terms of percentage, this deviation is similar for both the devices (LSM6DSO and LSM6DSOX), for all the device ODR, and for both the gyroscope and the accelerometer (even if it could be slightly different between them). Consider the ODR as a variable of average 52Hz and standard deviation of 1Hz. This means that a reasonable interval within 3sigma is [-49Hz, 54Hz]. This parameter is not available in the datasheet, and comes from a random and representative sample (100 DUTs) of the production population and lots.
As side note, the best way to measure actual ODR is to enable the DRDY physical interrupt and check at the oscilloscope the timing between the rising (or the falling) consecutive edges.
>> If yes, is there information about the potential range? Or is there maybe something that I did not configure properly?
Besides the information of the previous point, in order to better synchronize the data output between accelerometer and gyroscope, I suggest you to enable the BDU bit of the CTRL3_C (12h) register (that blocks the data update), even if the actual ODR will not change.
-Eleon
2020-11-13 02:58 AM
Hi @DWind.1 ,
>> Can you confirm that there is a difference between the configured and the actual ODR?
Yes, there can be a deviation from the nominal value of the ODR. In terms of percentage, this deviation is similar for both the devices (LSM6DSO and LSM6DSOX), for all the device ODR, and for both the gyroscope and the accelerometer (even if it could be slightly different between them). Consider the ODR as a variable of average 52Hz and standard deviation of 1Hz. This means that a reasonable interval within 3sigma is [-49Hz, 54Hz]. This parameter is not available in the datasheet, and comes from a random and representative sample (100 DUTs) of the production population and lots.
As side note, the best way to measure actual ODR is to enable the DRDY physical interrupt and check at the oscilloscope the timing between the rising (or the falling) consecutive edges.
>> If yes, is there information about the potential range? Or is there maybe something that I did not configure properly?
Besides the information of the previous point, in order to better synchronize the data output between accelerometer and gyroscope, I suggest you to enable the BDU bit of the CTRL3_C (12h) register (that blocks the data update), even if the actual ODR will not change.
-Eleon
2020-11-13 03:16 AM
Hi Eleon!
This is really valueable information, thank you! One question:
How can I interpret the [-49Hz, 54Hz] interval? Does it mean during operation of a specific unit the interval can move inside that corridor? Or does it mean that across the 100 units that you tested the interval is constant for every single device but can vary between the mentioned thresholds from unit to unit?
Best wishes,
Dominik
2020-11-13 03:19 AM
Hi Dominik,
The second one, i.e. that ODRs of the 100 units distributes in that interval, while the single-device ODR is pretty constant, since the jitter on a single device is much lower.
-Eleon
2023-07-25 03:00 AM - edited 2023-07-25 03:23 AM
Hi ST,
I have the same question when the ODR is configured to 833hz, and we measured that the data-ready of INT1 interval is 855hz.
Besides, when I enable timestamp through TIMESTAMP_EN of CTRL10_C and I can observe the timestamp variation between data are constantly at 48, which is equals to 1200us (1LSB = 25us) and so we can see it at 833.33hz.
However, the interrupt intevral as our measurement via scope is a little bit higher than configuration and timestamp.
Is the result still under expectation?
Thanks
YW