Compass calibratrion problem with 3.6.6

After upgrading to 3.6.6, despite many attempts, compas does not calibrate. Both using the mission planer and sending it with stick comand (throttle to up and right). I am using the mission planner 1.3.62(beta upgrade)and 1.3.59 and the external compass of the m8n ublox. After returning to version 3.5.7, everything is ok. I was able to calibrate the compass in version v3.6.6 using QGround Control.
If someone also has such a problem, I can collect data during calibration and provide it in the log.

I will add that the problem described is on pixhawk 2.4.8 and firmware 3.6.6
During calibration, the progress bar (mission planer) moves up to 100% and despite the perfect fit, I get the signal of a failure and the calibration begins again. Similarly, when I call the compass calibration with the stick command (throttle up and right). However, the calibration of the compass by the QGround Control program runs without errors. After downgrate the firmware to version 3.5.7, the compass is calibrated under the mission planner correctly. I wonder if the problem is only with me or is it a firmware problem 3.6.6

3.6.6 includes the ability to check (and optionally correct) the orientation of the compasses by comparing their movements with the IMU. This all happens as part of the compass calibration and if it cannot find a matching orientation the calibration will fail. To test this, try turning off this feature by setting COMPASS_AUTO_ROT = 0.

Of course, this probably shows that there is something wrong with the orientation of one of the compasses which could be dangerous if that compass becomes the primary.

It might be good to check the raw sensor outputs from the compasses. I don’t know how to do this with QGC but with MP there are fields called mx, my, mz, mx2,my2,mz2, mx3,my3,mz3, etc. It’s also possible that somehow (normally user error) one of the COMPASS_EXTERNAL2/3 parameters has been set to 1 which tells AP that the compass is “external” even though it might be an internal compass.

I would check the COMPASS_ORIENT parameters and also the COMPASS_EXTERNAL.

1 Like

I have COMPASS_AUTO_ROT = 2 and external compas_orient on none (I know I should probably have 14 flip270 for ublox). So far both compasses have matched, and the 3.6.6 after calibration in QGC show in flyght almost the same data. In a few days I will check what exactly caused calibration error in MP. Thank you for quick response and help.

Cause of problems with the calibration were interference on the i2c. Short interferences on the Mag graph were caused by the disconnection of the cable screen. Thanks