MPU-9250 accelerometer gravity values are different on different axes

By dtecta , 9 January 2018

I'm experiencing some problems with the MPU-9250 accelerometer. When I put the PCB on its side the x- and y-axis show a proper gravity of 1 g (9.8 m/s^2). The z-axis (PCB horizontal) however shows a value of 1.02 g (10 m/s^2). I have calibrated the zero offsets properly by sampling a number of readings upright and sampling an equal number with the PCB upside down, taking the averages, and adding the results. In this way gravity is eliminated in the offsets. After setting the offsets, z-axis reads 10 m/s^2 upright and -10 m/s^2 upside down, so everything is nicely balanced. I've been looking into the documentation and different open-source git repositories to see if this is common problem and the slopes for each of the axes need calibration. Turns out that this issue is not addressed anywhere. This is quaint since linear acceleration after subtracting gravity is used for dead-reckoning in several places. Since calibration of the slopes does not appear to be required, I'm suspecting faulty hardware. Unfortunately, I have only one test PCB. I'm asking the forum: Is this a common problem and do I need to calibrate the slopes as well? I'm also considering implementing the self-test. Can anyone tell me where I can find the document mentioned in the register map: "AN-MPU-9250A-03, MPU-9250 Accelerometer, Gyroscope and Compass Self-Test Implementation"? Any input in this matter is greatly appreciated.

Gino

phpbb Topic ID
36694