Autopilot suites

October 9, 2025 · View on GitHub

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]

PlatformLatest ReleaseOSLanguageLicense / FC / Doc / Config Tool
Hack flightNoneC++GPL-3.0 / – / Lesser GPL-3.0
Betaflightv4.5.2SchedulerCGPL-3.0 / – / GPL-3.0
INAVv8.0.1SchedulerCGPL-3.0 / – / GPL-3.0
ArduPilotv4.6.2ChibiOS / NuttX / LinuxC/C++GPL-3.0 / CC-BY-SA-3.0 / GPL-3.0
PX4v1.16.0NuttXC/C++BSD 2-Clause / CC-BY-SA-3.0 / GPL-3.0
Paparazziv6.4.0ChibiOS / SchedulerC/PythonGPL-3.0 / GFDL / GPL-3.0
ROSflightv1.3.0LinuxCBSD 3-Clause
Crazyflie Firmwarev2025.09LinuxCGPL-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]

GCSLastest ReleaseSupported PlatformsOS (L/W/M)Protocol(s)Language / FrameworkLicense
Mission Plannerv1.3.82ArduPilot✕/✓/✓MAVLink.NET / C#GPL-3.0-only
APM Planner 2v2.0.30-rc3ArduPilot, PX4✓/✓/✓MAVLinkQt / C++GPL-3.0-or-later
MAVProxyv1.8.71ArduPilot✓/✕/✕MAVLinkPythonGPL-3.0-or-later
AndroPilotv1.9.14ArduPilot✕/✕/✕MAVLinkJavaGPL-3.0-only
QGroundControlv4.4.4ArduPilot, PX4✓/✓/✓MAVLinkQt / C++Apache-2.0 / GPL-3.0-only
Paparazzi Centerv6.4.0Paparazzi✓/✓/✓PprzLinkPythonGPL-2.0-only
LibrePilot GCSv16.09LibrePilot✓/✓/✓UAVTalkC++ / QtGPL-3.0-only
Betaflight-Configuratorv10.10.0Betaflight✓/✓/✓MSP, MAVLinkElectron / JavaScriptGPL-3.0-only
iNAV-Configuratorv8.0.1iNAV✓/✓/✓MSP, MAVLinkElectron / JavaScriptGPL-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

  1. 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.
  2. 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: {{ git_revision_date_localized }}

--8<-- "docs/goatcounter.html"