Autopilot suites
In aerial robotics, a UAV’s software stack is typically divided into two subsystems:
- The Flight Control Firmware: embedded onboard the vehicle—manages real-time sensor fusion, attitude stabilization and closed-loop flight control.
- The Ground Control Station (GCS): running on the operator’s workstation—provides the human–machine interface for mission planning, live telemetry monitoring, parameter tuning and post-flight analysis. Below, we list popular open-source flight control firmware and GCS packages along with their supported platforms.
Flight Control Firmware
Comparison of Flight Control Firmware. [1]
| Platform | Latest Release | OS | Language | License / FC / Doc / Config Tool |
|---|---|---|---|---|
| Hack flight | — | None | C++ | GPL-3.0 / – / Lesser GPL-3.0 |
| Betaflight | v4.5.2 | Scheduler | C | GPL-3.0 / – / GPL-3.0 |
| INAV | v8.0.1 | Scheduler | C | GPL-3.0 / – / GPL-3.0 |
| ArduPilot | v4.6.2 | ChibiOS / NuttX / Linux | C/C++ | GPL-3.0 / CC-BY-SA-3.0 / GPL-3.0 |
| PX4 | v1.16.0 | NuttX | C/C++ | BSD 2-Clause / CC-BY-SA-3.0 / GPL-3.0 |
| Paparazzi | v6.4.0 | ChibiOS / Scheduler | C/Python | GPL-3.0 / GFDL / GPL-3.0 |
| ROSflight | v1.3.0 | Linux | C | BSD 3-Clause |
| Crazyflie Firmware | v2025.09 | Linux | C | GPL-3.0 |
Here is a list of autopilot suites that are either EOL (End of Life) or haven't received an update in the last 5 years:
Ground Control Stations (GCS)
Comparison of GCS software and their supported platforms.[2]
| GCS | Lastest Release | Supported Platforms | OS (L/W/M) | Protocol(s) | Language / Framework | License |
|---|---|---|---|---|---|---|
| Mission Planner | v1.3.82 | ArduPilot | ✕/✓/✓ | MAVLink | .NET / C# | GPL-3.0-only |
| APM Planner 2 | v2.0.30-rc3 | ArduPilot, PX4 | ✓/✓/✓ | MAVLink | Qt / C++ | GPL-3.0-or-later |
| MAVProxy | v1.8.71 | ArduPilot | ✓/✕/✕ | MAVLink | Python | GPL-3.0-or-later |
| AndroPilot | v1.9.14 | ArduPilot | ✕/✕/✕ | MAVLink | Java | GPL-3.0-only |
| QGroundControl | v4.4.4 | ArduPilot, PX4 | ✓/✓/✓ | MAVLink | Qt / C++ | Apache-2.0 / GPL-3.0-only |
| Paparazzi Center | v6.4.0 | Paparazzi | ✓/✓/✓ | PprzLink | Python | GPL-2.0-only |
| LibrePilot GCS | v16.09 | LibrePilot | ✓/✓/✓ | UAVTalk | C++ / Qt | GPL-3.0-only |
| Betaflight-Configurator | v10.10.0 | Betaflight | ✓/✓/✓ | MSP, MAVLink | Electron / JavaScript | GPL-3.0-only |
| iNAV-Configurator | v8.0.1 | iNAV | ✓/✓/✓ | MSP, MAVLink | Electron / JavaScript | GPL-3.0-only |
Notes:
- Order for OS is Linux/Windows/macOS, with ✓ = supported, ◐ = partial, ✕ = not supported. - AndroPilot is Android-only, hence ✕/✕/✕ here.
- All other entries match their official supported OS lists.
References
- Ebeid, E., Skriver, M., Terkildsen, K.H., Jensen, K. and Schultz, U.P. (2018) A Survey of Open-Source UAV Flight Controllers and Flight Simulators. Microprocessors and Microsystems, 61, 11-20. https://doi.org/10.1016/j.micpro.2018.05.002.
- Aliane, N. (2024). A Survey of Open-Source UAV Autopilots. Electronics, 13(23), 4785. https://doi.org/10.3390/electronics13234785.
This page was last updated: October 9, 2025