Showing results for 
Search instead for 
Did you mean: 

LSM6DS3TR-C not generating new data


I'm using a ​LSM6DS3TR-C and polling the status register to determine when the gyro or accelerometer have produced a new value. This works fine for the most part however, if the sensor is moved quickly, it locks up and the new data sample bits in the status register never go high again. Think the accelerometer bits are XLDA.

To get the sensor to work again, it needs to be powered down. Simply preforming a software reset is not enough.

Any ideas what could cause this?

Federica Bossi
ST Employee

Ciao ALees,

Can you give us more information about your setup? What is your reading procedure?

In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.
ST Employee

Hi @ALees.2​ ,

Do you have updates on the issue?

You might try to set the BDU bit iniCTRL3_C (12h) (see datasheet p.63), or try to increase the ODR rate.

You should also be sure that, if you move quickly your device, you are not causing a temporary mechanical or electrical damage (e.g. temporarily detaching Vdd or VddIO, or similar issues).

Or again, you could run the self-test during the fast movement (C sample code on Github lsm6ds3tr_c_self_test.c), and see if it fails.