Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/PX4/PX4-Autopilot/llms.txt

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

PX4 is an open-source autopilot flight stack that runs on dedicated flight controller hardware to stabilize, navigate, and automate unmanned vehicles. Whether you are building a racing quadcopter, a long-range fixed-wing survey platform, or an autonomous ground rover, PX4 provides the software foundation — and understanding a few key concepts up front will make every subsequent step much clearer.

What is a Drone?

A drone, formally called an Unmanned Vehicle (UV), is an unmanned robotic vehicle that you can control manually or let operate autonomously. Drones travel in the air, on the ground, and on or under the water, and they serve a wide range of applications: aerial photography, cargo delivery, racing, search and rescue, infrastructure inspection, and environmental surveying. The formal terminology breaks down by environment:
  • UAV — Unmanned Aerial Vehicle (aircraft)
  • UGV — Unmanned Ground Vehicle
  • USV — Unmanned Surface Vehicle (water surface)
  • UUV — Unmanned Underwater Vehicle
The term Unmanned Aerial System (UAS) refers to the complete system: the UAV itself plus the ground control station, radio controller, and any other supporting hardware or software used to operate the drone and process its data.

Vehicle Types Supported by PX4

PX4 supports a wide range of vehicle frames. Each type has different strengths depending on your mission requirements.

Multicopter

Multi-rotor vehicles (quadcopters, hexacopters, octocopters) offer precision hovering and vertical takeoff and landing (VTOL from rest). They are the most popular vehicle type because they are relatively easy to assemble, and PX4 provides flight modes that make them accessible even to beginners. The trade-off is shorter flight times compared to fixed-wing aircraft.

Fixed-Wing (Plane)

Fixed-wing vehicles fly faster and farther than multicopters on the same battery, making them ideal for covering large areas in ground surveys, mapping missions, or long-range delivery. They are more complex to launch and land, and cannot hover in place.

VTOL

Vertical Takeoff and Landing (VTOL) vehicles are hybrids: they take off and land like a multicopter, then transition to forward flight like a fixed-wing aircraft. They combine the hovering capability of a multicopter with the range and efficiency of a plane. VTOL frames include tiltrotors, tailsitters, and quadplanes, and tend to be more expensive and harder to tune than either pure type.

Rover

Ground rovers are car-like vehicles controlled through PX4’s rover flight stack. They are simpler to operate than aircraft, can carry heavier payloads, and draw little power when stationary — useful for inspection or patrolling tasks where flight is unnecessary.

Helicopter

Helicopters share the hovering benefits of multicopters but are mechanically more complex and more aerodynamically efficient at scale. PX4 supports traditional single-rotor helicopters with a tail rotor.

Airship / Balloon

Lighter-than-air vehicles offer high-altitude, long-duration flight. Control over speed and direction is limited, but they excel at persistent surveillance or atmospheric sensing missions.

What is an Autopilot?

The autopilot is the “brain” of the drone. At a minimum it consists of:
  • Flight controller (FC) hardware — a dedicated embedded board containing a real-time processor and onboard sensors.
  • Flight stack software — the firmware running on a real-time OS (RTOS) that reads sensor data, runs control algorithms, and drives actuator outputs.
The flight stack provides essential stabilization and safety features, and typically also assists the pilot during manual flight (for example, by automatically leveling the vehicle when you release the sticks). More advanced autopilots support fully autonomous behaviors: automated takeoff and landing, pre-programmed mission execution, and GPS-guided return-to-home.

The PX4 Flight Stack

PX4 is a powerful open-source autopilot flight stack that runs on the NuttX real-time operating system. It is the reference software platform for Pixhawk hardware and is actively maintained by the Dronecode Project. Key capabilities of PX4 include:
  • Support for multicopters, fixed-wing aircraft, VTOLs, ground vehicles, and underwater vehicles
  • A rich set of flight modes ranging from fully manual to fully autonomous
  • Robust safety and failsafe systems (low battery, RC loss, geofence breach, and more)
  • Deep integration with companion computers and robotics APIs such as ROS 2 and MAVSDK
  • A large ecosystem of compatible sensors, ESCs, telemetry radios, and payloads

QGroundControl

QGroundControl (QGC) is the free, open-source ground control station (GCS) developed by the Dronecode project. It runs on Windows, macOS, Linux, and Android, and it is the primary tool you use to interact with a PX4-powered vehicle. With QGroundControl you can:
  • Flash PX4 firmware and configure the autopilot for your airframe
  • Monitor real-time telemetry: position, altitude, battery, GPS lock, and more
  • Plan, upload, and monitor autonomous waypoint missions
  • Set geofences and define failsafe behavior
  • Tune PX4 parameters while the vehicle is on the bench or in the air
QGC communicates with the vehicle over a telemetry radio link using the MAVLink protocol. On hardware that supports joysticks, you can also fly manually through QGC. MAVLink is a lightweight binary communication protocol designed for unmanned vehicles. It serializes telemetry and command messages between the flight controller and external systems such as QGroundControl, companion computers, and MAVSDK-based applications. MAVLink is the common language that ties the PX4 ecosystem together: the GCS speaks it, the onboard companion computer speaks it, and third-party integrations depend on it.

Drone Components at a Glance

A complete PX4 drone system involves several hardware layers working together:
ComponentRole
Flight controllerRuns PX4 firmware; reads sensors; drives actuators
Sensors (gyro, accelerometer, barometer, GPS, compass)Provide state estimation for stabilization and navigation
ESCs and motorsConvert FC output signals into motor speed
RC transmitter / receiverAllow a pilot to send manual control inputs
Telemetry radioBidirectional MAVLink link to QGroundControl
Battery and power modulePower the entire system; report voltage and current to PX4
SD cardLog flight data; required for missions and some peripherals
Payload (camera, sensor, cargo)The mission-specific equipment the drone carries
A companion computer (also called a mission computer or offboard computer) is a separate onboard Linux computer that runs alongside PX4 to provide higher-level capabilities: computer vision, advanced networking, ROS 2 integration, and custom autonomy logic. The companion computer communicates with PX4 over MAVLink or the PX4 ROS 2 Control Interface. Some boards integrate the companion computer and flight controller on a single baseboard; others connect them via serial cable or Ethernet.

Arming and Disarming

PX4 uses the concept of arming to control when motors are powered:
  • Disarmed — all motors and actuators are unpowered. This is the default state on the ground.
  • Prearmed — servo actuators are powered but motors are not (primarily used for testing).
  • Armed — all motors and actuators are powered and ready to spin.
An armed vehicle is dangerous. Propellers can begin spinning at any time without further user input. Always stand clear of the propeller arc and treat an armed vehicle as live at all times.
By default, you arm the vehicle using an RC stick gesture (throttle/yaw stick held to the bottom-right for one second on Mode 2 transmitters). PX4 will refuse to arm if the vehicle is unhealthy, if required sensors are not calibrated, or if a safety switch has not been engaged.

Safety and Failsafes

PX4 includes a configurable failsafe system that automatically takes protective action when something goes wrong. Failsafe triggers include:
  • Low battery
  • RC signal loss
  • GPS / position estimate loss
  • Loss of connection to a companion computer (Offboard loss)
  • Loss of telemetry link to the GCS
  • Geofence breach
For each trigger, you configure the response — such as landing immediately, holding position, or returning home — through the Safety settings in QGroundControl.

Build docs developers (and LLMs) love