Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/Ardupilot/ardupilot/llms.txt

Use this file to discover all available pages before exploring further.

ArduPilot is an open source autopilot system trusted by millions of autonomous vehicles worldwide. It supports an extensive range of vehicle types — from quadcopters and fixed-wing planes to ground rovers and underwater submarines — all running on a shared, battle-tested codebase developed since 2010.

Introduction

Learn what ArduPilot is, how it’s structured, and which vehicle type fits your needs.

Quickstart

Set up your development environment and get ArduPilot running in SITL simulation.

Building from Source

Configure the Waf build system and compile firmware for SITL or real hardware.

Library Reference

Explore the 150+ shared libraries powering ArduPilot’s sensors, control, and comms.

Choose your vehicle

ArduPilot ships separate firmware for each vehicle type, sharing a common library core.

ArduCopter

Multi-rotor copters, traditional helicopters, and hybrid VTOL aircraft.

ArduPlane

Fixed-wing aircraft, flying wings, QuadPlanes, and tailsitters.

Rover

Ground rovers, boats, balance bots, and skid-steer vehicles.

ArduSub

Remotely operated underwater vehicles (ROVs) and autonomous submarines.

Core capabilities

Flight Modes

Understand stabilize, guided, auto, loiter, and the full mode system.

Parameters

Configure vehicle behavior through ArduPilot’s persistent parameter system.

MAVLink

Communicate with ground control stations using the MAVLink protocol.

Failsafes

Understand the safety systems that protect vehicles during emergencies.

Develop with ArduPilot

SITL Simulation

Test your code in software simulation before flying real hardware.

Lua Scripting

Extend ArduPilot with Lua scripts — no recompilation required.

Hardware Abstraction

Write portable code using ArduPilot’s HAL for ChibiOS, Linux, and ESP32.

Contributing

Learn how to contribute code, follow coding style, and submit pull requests.

Build docs developers (and LLMs) love