Calibrating both Compasses

I have the V2 of the GPS and I am only able to calibrate the Pixhawk Compass. It seems that the Zubax GPS isn’t showing up during calibration. I have configured the settings in mission planner as described in the documentation.

Has anyone seen this problem and know how to fix it, or have any input for me to fix this issue?


Hi Stuart,

Could you please post a screenshot of your MissionPlanner at the compass configuration page?

Also, how do you determine that the compass of Zubax GNSS is not being used by APM?


So here is the first screen shot.

And heres the second.

Uhm, it would appear to be a problem with ArduPilot. What version are you using?

While Calibrating I get the above screenshot. This what is making me think that only one compass is working.

3.4RC5 I believe its 3.4RC something for sure but not totally shure which ver of RC.

Is there a chance to test this with an older version, perhaps RC1? This may be caused by a regression. If we’re able to confirm this, we’ll just open a ticket on the APM bug tracker and let them handle this. Also, can you please confirm whether I2C interfaced compasses work correctly? Thanks.

Ok Stupid me…
I went ahead and took my copter outside and didn’t see any lock not even an attempt at locking.
So I checked the documentation again and found that I had not set BRD_CAN_ENABLE to 2 as I needed to so it wasn’t even seeing the GPS.

I enabled that and at least got a lock and the Compass started showing up as it should.

Problem now is that the Pixhawk GPS is calibrating fine but the Zubax Compass is not with an error of something to the extents of Offsets too high.

It is mounted correctly with the arrow facing forward and in the same direction as the Pixhawk and rotation set to none.

I have tried setting the Yaw Rotation to something else with still no luck. Although I haven’t tried every option.

Has this been seen before am I missing something?

To understand a little better the points on the display are showing up outside the normal sphere where they show up on the Pixhawk Compass. In other words they are not showing up around the XYZ lines but rather outside of the XYZ lines.

Interesting. I recall that there was at least one other user who also had external compass calibration issues with APM. IIRC they were resolved eventually by repeated recalibration. We never were able to reproduce these issues locally though. The problem could be caused by:

  • Local magnetic field distortions, e.g. if there’s a power supply wire of sorts or a large ferrous structure nearby the compass.
  • Invalid offset limits hard-coded in the firmware.
  • Misconfigured rotation, although I understand that you already checked for that.

Maybe you could post some screenshots here that illustrate the problem? We could take them to the APM bug tracker and ask them to raise the thresholds, for instance.

Peculiar. Any chance you could show us also how the module is installed onto the airframe? If there’s a power conductor nearby or something that would explain a lot. Thanks.

We’re currently investigating the issue, expect updates soon.

Hi Stuart,

It took us forever to react, but it would appear that the problem is now fixed. Please upgrade your Zubax GNSS 2 with this firmware: (the right file has extension *.uavcan.bin).

Waiting eagerly for your results.