Pixhawk and two compass working together?

Hi Everyone

I have built a 450 size y6 and using Pixhwak(fw3.2.1) for the first time. All my other quads were apm 2.6 based. I have an u7 gps with the compass built in. I connected it and assumed it would alto disable the internal one as the guides that I had looked at stated. Looking at the full parameters under compass I see pick 1 for internal and 2 for external. It picked two automatically so all look good.

Now this is where it gets a bit confusing for me. When I do a compass calibration it had me spin the quad for over 5000 points. I just decided to hit ok and it then returned offsets for compass 1 than compass 2? I also saw error rates for both when calibrating. Can anyone tell me if pixhawk uses both compasses and if so if I have to use roll_180 on the compass on my gps like most will it also roll the one on pixhawk?

I need this same info… I’m getting stressed out with the issues I’m having with this compass on my pixhawk and the lack of documentation and explanations into pixhawk and all of its settings… It seems like not much going on in this forum, lots of posts but very little responses or help… So if someone can’t help here can someone at least point me to where I can get some pixhawk and compass help… Thank you


You can see they both are calibrated, by individual offsets.
Unanswered questions are mostly ones that people can answer to in wiki, or by getting familiar with parameters and how things work.

I was told on I think the pix facebook group that pix can and will use both compasses but I don’t know if that is true.

At the moment it uses only one compass that is selected. i.e. if you have an external compass, it will use that in preference. (if it exits, it’s the default compass). The calibration of both compasses makes sure that if the external one becomes disconnected, it would be used (but only a power cycle). There is plans to have fallback scenario that the internal compass is used, if the external one fails.

If you set the compass_use to zero it is ignored, but it still needs to be calibrated.

copter.ardupilot.com/wiki/config … s_external