Mission planner version - 1.3.50
OS - Win10 Home
Hardware setup - Pixhawk with a 3DR GPS module
I was facing compass inconsistency issues with a new plane that I built. The Pre-Arm check was failing due to compass inconsistencies. I tried recalibrating the compass using Live calibration in mission planner several times to no avail. The inconsistency was consistent.
I had two other planes of an identical setup, which were working fine. I saved the parameters of those planes and tried calibrating their compasses using the same method. Both planes failed the pre-arm check due to compass inconsistencies after being calibrated. On loading the saved parameters, they were passing the arming checks. Strange.
I compared the parameters before and after the calibration, as expected the COMPASS_OFS in X, Y, and Z changed by a small amount in all of them. In addition to the offsets, the COMPASS_DIA and COMPASS_ODI parameters in all directions had changed too. on resetting them back to the original values (1 and 0 for all three axes respectively) the inconsistency disappeared and the Pre-arm check passed.
To further confirm this, I opened up an archived version of Mission planner 1.3.38 which I had saved a long while back. I tried the Live calibration using that, and only the offsets had changed. There was no compass inconsistency. Seems like the new version of mission planner sets DIA and ODI values which are causing the inconsistency in my system.
TLDR:
Mission planner live calibration causes compass inconsistencies by setting poor DIA and ODI values. This behaviour was not observed in some earlier versions.
Here is the comparison of the parameters which were changed from initial values( which were working fine) to the ones after calibration using 1.3.50. When calibrating with 1.3.38, the DIA and ODI values remained the same, and only the offsets changed.
If you need any additional info or tests, let me know.
No, I haven’t. And I just noticed that mission planner 1.3.50 does not show the Onboard Mag calibration option. It is visible in 1.3.38 though. I’ll try to do it using 1.3.38 and compare the results. Could this be dependent on the firmware? I’m using Arduplane 3.5.2 in the pixhawks.
I noticed that the onboard mag calibration does set the COMPASS_DIA and COMPASS_ODI values for the internal compass. The external was unchanged. Here is the comparison -
It seems 1.3.50 sets unusually high DIA values during Live calibration which might be causing this.
I’m using the last today MP beta, and I’ve whats look like a issue similar to this one apparently, but here only with compass_DIAX around 442, and the last beta doesn’t solve this
Michael,
I was able to test the new beta MP with Live calibration on my setup. There seems to be something wrong going on. Similar to @Giorgio_Rinolfi, The values are being set way too high. Here is the attached tlog file -