How to Set Up ArduPilot on Your Flight Controller
Share
Quick Answer
ArduPilot is autopilot firmware, not a physical flight controller. Install the stable ArduCopter, ArduPlane or Rover build for your exact board, then configure orientation, wiring, sensors, outputs and failsafes in Mission Planner. A successful flash is only the start: do not fly until motor order, control direction and every pre-arm message have been checked.
What Is ArduPilot?
ArduPilot is open-source software that reads the sensors and receiver, then commands motors or servos. It runs on supported hardware such as a Pixhawk 6C or CubePilot Cube Orange+. ArduCopter covers multirotors and helicopters, ArduPlane covers fixed-wing and VTOL, and Rover covers ground vehicles and boats.
Choose the current stable build for the vehicle and exact board target rather than copying a version number from an old video. If you are still choosing firmware, read our Betaflight, INAV and ArduPilot comparison.
Choose a Supported Flight Controller
An F4, F7 or H7 label alone does not prove compatibility; the exact board needs an ArduPilot target. These current options cover three useful levels:
| Board | Main processor | Our recommendation |
|---|---|---|
| Pixhawk 6C | STM32H743 | Best starting point for a conventional first build |
| Pixhawk 6X | STM32H753 | More sensor redundancy for demanding aircraft |
| Cube Orange+ | STM32H757 | Modular Cube ecosystem and carrier-board builds |
Check the supported-hardware list before buying any other board. Our Pixhawk 6 comparison explains the hardware differences, while the autopilots collection shows current options.
ArduPilot First-Time Setup: Use This Order
Mission Planner on Windows exposes the fullest ArduPilot setup and diagnostic path. QGroundControl is useful on macOS and Linux, but for a first configuration we recommend Mission Planner.
| Step | Action | Do not continue until |
|---|---|---|
| 1 | Connect by USB and install stable firmware for the exact board and vehicle | The controller reconnects and reports the intended target |
| 2 | Mount the controller and set board orientation | The artificial horizon follows the airframe correctly |
| 3 | Wire power, receiver, GPS/compass and outputs from the board pinout | Polarity, voltage and UART TX/RX paths are confirmed |
| 4 | Select frame type and calibrate accelerometer, compass and radio | Sensor movement, stick direction and endpoints are correct |
| 5 | Configure motor/servo outputs and battery monitor | Output order, direction, voltage and current readings are verified |
| 6 | Assign flight modes and configure radio and battery failsafes | Bench tests produce the intended failsafe action |
| 7 | Power-cycle and clear every pre-arm message | No warning has simply been disabled |
Receiver and ESC Details That Cause Failed Setups
For ELRS, cross the receiver TX and RX wires to a spare UART, set that UART's SERIALx_PROTOCOL to 23, and set bit 13 of RC_OPTIONS for ELRS's 420Kbaud CRSF-compatible mode. For SBUS, use the dedicated RC input where provided and follow the exact board pinout; inversion support is board-specific.
Calibrate analogue PWM ESCs only when their instructions require it. DShot does not use throttle-range calibration. With propellers removed, use Mission Planner's motor test to confirm output order and rotation. Our ESC calibration guide covers each protocol.
Before the First Flight
After propeller-off tests, refit each propeller in the correct orientation and read every pre-arm message. Confirm control directions, motor order, battery voltage, GPS home position and failsafe actions. Never suppress a check merely to make the aircraft arm.
For Copter, prove a restrained STABILIZE hover before relying on Loiter; prove Loiter before trying RTL or AUTO. This sequence separates an attitude or motor fault from GPS, compass and mission behaviour.
FAQ
Is ArduPilot a flight controller?
No. ArduPilot is firmware; Pixhawk and CubePilot products are flight-controller hardware.
How do I know whether my board supports ArduPilot?
Look for the exact model in ArduPilot's supported-hardware and firmware-target lists. Processor family alone is not enough.
Mission Planner or QGroundControl?
Use Mission Planner on Windows for the most complete first-time setup. QGroundControl is the practical choice on macOS or Linux.
ArduCopter or ArduPlane?
Use ArduCopter for multirotors and helicopters. Use ArduPlane for fixed-wing and VTOL aircraft.