I am in the process of installing my Navio+ in my FPV quad. I tried to calibrate the compass multiple times now, both installed on the quad and not. I always get offsets like this:
and Arducopter is complaining about to high offsets. The compass error shown during calibration was very high, too (around 12). The last tries showed errors around 0.x, but the offsets were still like shown in the picture.
RPi2/Navio were powered by USB or PM, no difference.
I have a nano Wifi adapter plugged into USB.
I disabled the prearm checks and the copter is flying in stabilize mode in my living room. Already quite stable without further tuning. The compass seems to show the right directions in missionplanner, so I have to see what happens if I fly outside in other modes than stabilize.
One thing I noticed, the wifi connection gets real slow as soon as my RC transmitter (Taranis) is switched on.
But I like it better this way around, then having to worry about RC range.
I do not have such high offsets with my original Navio. I will try and run APMCopter with it and see how high the offsets are. (oh no, juggling my rover again…:-()
You can not simply connect the external compass to I2C. I had compass problems with my Navio (not +) before. Mikhail explained that the MPU9250 compass is handled as an external compass. You have to change some file and compile APM yourself.
Here is the thread: