I'm trying to build a quadcopter with arduino and the MPU9250. I've been using this library : GitHub - hideakitai/MPU9250: Arduino library for MPU9250 Nine-Axis (Gyro + Accelerometer + Compass) MEMS MotionTracking™ Device but I've tried also with Kris Winer's library ending up with the same problem.
Basically, I read correct data as long as the quadcopter is still, when I turn on even just 1 motor the Roll measurement starts to drift and becomes very noisy, you can see the difference between the images for motor_off and motor_on.
I report below also my calibration phase.. I've already tried to change the cutoff frequency of the LPF and samples rate without any luck.
Has anyone experienced the same problem? Who hasn't can anyway give me some advice?
I2C clock speed is correctly set to 400kHz.
Accel Gyro calibration will start in 5sec.
Please leave the device still on the flat plane.
Mag calibration will start in 5sec.
Please Wave device in a figure eight until done.
Mag Factory Calibration Values:
X-Axis sensitivity offset value 1.18
Y-Axis sensitivity offset value 1.18
Z-Axis sensitivity offset value 1.13
Mag Calibration: Wave device in a figure eight until done!
mag x min/max:
mag y min/max:
mag z min/max:
Mag Calibration done!
AK8963 mag biases (mG)
356.12, -165.72, -256.48
AK8963 mag scale (mG)
1.20, 1.28, 0.72