Unmanned Aerial Vehicles Codexery

ArduPilot

Open-source autopilot for drones, rovers, subs, and more.

ArduPilot

ArduPilot is an open-source autopilot software suite published under the GNU GPL version 3. It controls multirotor drones, fixed-wing and VTOL aircraft, RC helicopters, ROVs, ground rovers, boats, submarines, uncrewed surface vessels, AntennaTrackers, and blimps. Originally developed by hobbyists for model aircraft and rovers, it has evolved into a full-featured autopilot used by industry, research organizations, amateurs, and militaries.

Quick Facts

Developer
ArduPilot Development Team and Community
Repo
github.com/ArduPilot
Programming Language
C++, Python
Operating System
Cross-platform
Genre
Autopilot
License
GPLv3

Facts from the source article.

Lore & Background

The ArduPilot project traces its roots to late 2007, when Jordi Munoz wrote an Arduino program called 'ArduCopter' to stabilize an RC helicopter. In 2009, Munoz and Chris Anderson released ArduPilot 1.0 along with a hardware board. That same year, Munoz won the first Sparkfun AVC competition with a traditional RC helicopter UAV. The project grew through the DIY Drones community, founded by Chris Anderson in 2007. Early versions supported only fixed-wing aircraft using thermopile sensors, later replaced by an Inertial Measurement Unit (IMU). Vehicle support expanded to Copter, Plane, Rover, and Submarine subprojects. In 2011–2012, contributions from Andrew 'Tridge' Tridgell and Pat Hickey added automatic testing, simulation, PyMavlink, Mavproxy, and the AP_HAL hardware abstraction layer. Randy Mackay became lead maintainer of Copter in 2012, and Tridge took over Plane maintenance.

Reader's Guide

ArduPilot's significance lies in its evolution from a hobbyist project into a reliable autopilot adopted by industry, research, amateurs, and militaries. The software suite includes navigation firmware for vehicles and ground station software such as Mission Planner, APM Planner, QGroundControl, MavProxy, and Tower. It supports fully autonomous, semi-autonomous, and manual flight modes, programmable 3D waypoint missions, geofencing, stabilization, simulation with SITL, and a wide range of sensors including RTK GPS, barometers, magnetometers, laser and sonar rangefinders, optical flow, ADS-B transponder, and computer vision devices. Failsafes cover loss of radio, GPS, boundary breaches, and low battery. It operates in GPS-denied environments using vision-based positioning, optical flow, SLAM, and Ultra Wide Band. The codebase was rewritten in C++ with Python utilities, and runs on diverse hardware from Arduino-based APM 2.X to Linux boards like Raspberry Pi, Intel Aero, Qualcomm SnapDragon, and Xilinx Zynq. Documentation totals about 700 printed pages across six sections: Copter, Plane, Rover, Submarine, Developer, and Common.

Did You Know?

More in Unmanned Aerial Vehicles 1-24

Spotted an error? Know more?

Reader corrections go straight into our review queue. Suggest an edit · How this site is sourced

Comments

Loading…
Open in the interactive codex →