cancel
Showing results for 
Search instead for 
Did you mean: 

LSM9DS1 side-effects of fast ODR setting?

ABoge
Associate II

I have been using the fast ODR setting to reach magnetometer data rates higher than 80hz. I have noticed that there are spikes of about +/- 250 in the data at higher frequencies. After some research, it seems this is caused by reading registers while the device is also updating those values.

My question is are there any undocumented side effects of this fast ODR setting? I am wondering this because setting these higher data rates is not documented in the LSM9DS1 datasheet, but rather in the LIS3MDL datasheet.

1 ACCEPTED SOLUTION

Accepted Solutions
Miroslav BATEK
ST Employee

The higher frequencies are not out of spec even if they are missing in the datasheet, you can use them. It is just bug in the datasheet.

Yes, I can confirm that the data registers are updated even if your don't read them.

If BDU is set and you read the Low byte the High byte won't be updated until you read it. So the High and Low byte will be from the same sample. It is very recommended configuration.

View solution in original post

5 REPLIES 5
Miroslav BATEK
ST Employee

Did you set the BDU bit in CTRL_REG5_M (24h) register?

ABoge
Associate II

I did not enable the BDU setting because I am logging the data and would like for the data I read at any point to have an accurate timestamp. I assume that setting would result in old data being read as opposed to losing samples as I currently am.

Miroslav BATEK
ST Employee

The BDU would ensure that the LOW and HIGH byte in the output registers are from the same sample.

If the BDU is not set you can read LOW byte from previous sample and HIGH byte from current sample, which can cause the spikes which you mentioned.

Please try to enable BDU and check if the problem with the spikes persist.

ABoge
Associate II

Mainly I am wondering if there are side-effects of running the magnetometer at these higher frequencies. As setting the frequencies is not found in the datasheet for the sensor, I would like to know if these higher frequencies are out of spec and not documented on purpose for some reason.

Secondly, BDU does indeed seem to remove the spikes. However, my system regularly loses samples due to other operations. Can you confirm that the data registers are updated with BDU on even though neither bytes have been read?

Miroslav BATEK
ST Employee

The higher frequencies are not out of spec even if they are missing in the datasheet, you can use them. It is just bug in the datasheet.

Yes, I can confirm that the data registers are updated even if your don't read them.

If BDU is set and you read the Low byte the High byte won't be updated until you read it. So the High and Low byte will be from the same sample. It is very recommended configuration.