I’m running a TurboAce Matrix-S with a Pixhawk 2.1 and Here GPS. My issue is that on start-up the compass is off 90 degrees to the right. After a few seconds, it swings counter-clockwise 180 degrees and then finally settles out correctly. The entire process takes about 2-3 minutes. During this behavior, the EKF warning goes red and then finally settles a couple of minutes after the compass reads correctly. Once everything settles out, though, it flies fine. Compass calibration didn’t solve the issue. Magfield 1 & 3 are within specs. Magfield 2 is really high, but it is disabled. Is this normal start-up behavior for this hardware? I’ve previously been using Pixhawk 1 with M8N GPS and didn’t see this.
I also have a TurboAce Matrix-I with a Pixhawk 2.1 mounted 180 degrees(AHRS orientation also set to 180) and 2 Here GPS’s mounted forward (Compass Orientation set to 0). The 2 external compasses are enabled and the internal compasses are disabled. I had problems with the heading being 180 degrees off, but when I enabled the internal compass on startup it seemed to be corrected, although I would then get inconsistent compasses, which I would correct by disabling the internal compasses. I’m wondering if having disabled internal compasses and an AHRS board orientation other than 0 contributes to your problem. Maybe the autopilot can’t set the heading correctly on startup because it can’t resolve the board orientation when the internal compasses are disabled. And maybe the compass learn parameter is correcting it for you. Just some ideas but I’m not sure.