I have an Intel Aero RTF and flash Ardupilot onto it. However, i couldn't have a nice compass calibration quality. As you can see in the figures
I tried dozens of times in different times, indoor and outdoor environment, via WIFI and via the GCS on-board. I only succeed once and I couldn't duplicate that result.
I switch to Ardupilot because I had bad experience with PX4. Please see .
Now, I have a feeling that my compass is never correctly calibrated. Here in Ardupilot, you can see the calibration is complete and the quality is the lowest. I can arm the drone and fly. However, it will frequently raise an "GPS Glitch" error and have aggressive behavior.
Previously in PX4, I always get the "critical navigation failure: check sensor calibration" error. I guess the reason is that the compass is not correctly calibrated.
BTW, I reset the airframe in QGroundControl. It didn't help.
I understand the behavior of both PX4 and Ardupilot highly rely on the quality of compass calibration. This quality makes Intel RTF not usable. Could anyone help me with this? Many thanks!
Here's the output of aero-get-version.py
OS_VERSION = Ubuntu 16.04.4 LTS"
AIRMAP_VERSION = unknown
FPGA_VERSION = 0xc2
AeroFC firmware version = 3.5.7
Do you recommend to use the firmware files in /etc/aerofc/px4 and /etc/aerofc/ardupilot instead of using the latest firmware that i can download online?
I'll update my situation after I test it out. Thanks for your quick reply.
I meant that you should flash the default PX4 firmware version 1.6.5, which is located in /etc/aerofc/px4/
cd /etc/aerofc/px4/ http://aerofc-update.sh aerofc-update.sh nuttx-aerofc-v1-default.px4
Then, after checking with aero_get_version.py that you have the firmware version 1.6.5, please do a frame reset in QGC.
Since it's raining these days. I might need a few more days to test it out. I am just curious. Have you tested out Intel RTF with the latest firmware? It doesn't make much sense to me if the calibration doesn't work in the latest stable firmware. Anyway, I will give you feedback after I test it out.
I'm gonna end this discussion.
I tried flashing the default PX4 firmware and sometimes it behaves well but sometimes it behaves bad. Please see the discussion here.
Then I decides to switch to Ardupilot and stick on it for my project. There are a few points to keep in mind if you are also using Ardupilot with Intel Aero RTF.
1. Please flash the default firmware under /etc/aerofc/ardupilot. I would suggest you flash the latest firmware after making sure the default firmware works well.
2. Compass calibration is very important. However, even if QGroundControl tells you the calibration quality is bad (like the screenshot I showed in this thread), it might still works well if you calibrate it in the field right before your flight.
3. When testing your drone, takeoff with "attitude hold" mode, raise the drone to around 3m above the ground, change flight mode to "loiter". If the drone is out of control, quickly switch back to "attitude hold" mode to regain control. Take a look at the messages sent to your ground control station. If you see "GPS Glitch", it's highly possible you have a bad calibrated compass. Calibrate your compass again to resolve the issue.
4. If you the calibration procedure in QGroundControl cannot take in any data, try to do a compass calibration using APMPlanner. QGroundControl won't rewrite the parameters if the calibration is not successful. But APMPlanner would clear the COMPASS_OFS_X, COMPASS_OFS_Y, COMPASS_OFS_Z parameters. After this, you should be able to use QGroundControl to calibrate the compass.
After several trials I finally got to solve this compass calibration problem and make these conclusions. Hope it helps others in the community.
Thanks again for your advise!