Strange accelerometer values when SODAQ ONEv3 is at rest

Hello

We’ve been testing the accelerometer, and when it’s on top of a table, at rest, it throws values higher than 1g.

Some example outputs of x,y,z:

//2g
-0.04,-0.04,1.07
-0.04,-0.04,1.05
-0.04,-0.04,1.05
-0.03,-0.04,1.05
-0.04,-0.04,1.05
-0.04,-0.04,1.04

//4g
-0.02,-0.03,1.04
-0.03,-0.03,1.05
-0.03,-0.03,1.05
-0.03,-0.03,1.05
-0.02,-0.03,1.05
-0.03,-0.03,1.06

//8g
-0.03,-0.05,1.05
-0.02,-0.06,1.04
-0.02,-0.06,1.04
-0.02,-0.05,1.03
-0.02,-0.06,1.04
-0.02,-0.06,1.03

//16g
-0.05,-0.10,1.01
-0.05,-0.06,0.98
-0.05,-0.05,1.03
-0.02,-0.10,1.01
-0.05,-0.07,1.03
-0.04,-0.06,1.03

I have 2 questions regarding this:

  1. Do they need calibration?
  2. If the answer of 1 is YES… Do you have any suggestion on how to do it? We couldn’t find any calibration suggestion from the LSM303AGR tech docs.

According to the datasheet: https://www.st.com/resource/en/datasheet/lsm303agr.pdf (p.13) the accuracy at any sensitivity is ±7%. At rest you should expect an acceleration magnitude of 1.0 ±7% or anything between 0.93…1.07. Where the magnitude is = sqrt(xx + yy + z*z)

Those values seem within those limits.

Edit: Actually, I think the “Linear acceleration zero-g level offset accuracy” (also p.13) of ±80mg is the more relevant figure.

Ok great, thanks! Then it’s working ok.