ArduPilot Documentation Wiki

repository·master·Indexed 20 days ago

https://github.com/ardupilot/ardupilot_wiki

Source files and technical documentation for the ArduPilot ecosystem. Includes guides on hardware requirements for flapping fin blimps, ADS-B receiver and transmitter configuration, Manned Vehicle Avoidance (AVOID_ADSB), SITL ADS-B simulation, and Aerotate aeroPAX DroneCAN battery setup. Provides instructions for local frontend testing via Python or Docker and guidelines for contributing to the wiki.

Tokens
260.3K
Snippets
469
Records
1.3K
Agent score
71%

What's inside ArduPilot Wiki

  1. Overview of Using SITL with AirSim

    master

    AirSim is an open-source, cross-platform simulator built on Unreal Engine (with experimental Unity support) designed for drones, cars, and other autonomous vehicles. It provides physically and visually realistic simulations for AI research, including computer vision and reinforcement learning.

    ArduPilot Integration Details:

    • Supported Vehicles: Copter and Rover.
    • Platform Compatibility: Tested on single Linux machines and separate machines using Ubuntu 16.04/18.04. It also supports running AirSim on Windows 10 with ArduPilot inside WSL (Ubuntu 18.04).
    • MacOS: AirSim can run on MacOS, but integration with ArduPilot has not been tested.
    • APIs: AirSim provides APIs for Python, C++, and ROS for data collection and vehicle control.
    WARNING

    This integration is archived and instructions may be outdated, though the integration itself remains supported.

  2. Overview of ArduPilot projects and components

    master

    The ArduPilot ecosystem consists of several specialized autopilot projects and supporting tools:

    Autopilot Projects

    • Plane: Autopilot for fixed-wing aircraft.
    • Copter: Autopilot for multicopters and traditional helicopters.
    • Rover: Autopilot for ground vehicles.
    • Sub: Autopilot for submersible vehicles.
    • Antenna Tracker: For automatically aiming an antenna at a vehicle.

    Ground Control Stations (GCS) & Tools

    • Mission Planner: Most common GCS, written in C# (Windows, Linux/MacOS via mono).
    • APM Planner 2.0: GCS for APM written in C++ using Qt.
    • MAVProxy: Command-line oriented, scriptable GCS written in Python (primarily used by developers).
    • QGroundControl: Alternative GCS written in C++ using Qt.

    Protocols & Standards

    • MAVLink: The primary communication protocol between GCS, flight controllers, and peripherals.
    • DroneCAN: Lightweight protocol for reliable communication via CAN bus. ArduPilot uses libcanard (a portable C++ library).
  3. Overview of the mLRS project

    master

    mLRS is an open-source firmware providing long-range traditional RC and bi-directional telemetry (MAVLink, MSP, or serial) over a single radio link. It supports 433 MHz, 868/915 MHz, and 2.4 GHz bands, with LoRa modes capable of ranges from 7 km to over 140 km depending on hardware and configuration.

    Key Capabilities:

    • Telemetry: Full MAVLink support, including flow control and RSSI via RADIO_STATUS messages.
    • RC Data Output: Receivers can output RC channels via SBUS, CRSF (including link quality), or via embedded MAVLink injection (RC_CHANNELS_OVERRIDE or RADIO_RC_CHANNELS) to reduce wiring requirements.
    • ArduPilot Integration: Optimized for ArduPilot with support for flashing receivers via ArduPilot passthrough and managing radio configuration using MAVLink parameters.
    • Hardware Support: Compatible with various off-the-shelf modules (MatekSys, internal/external ELRS modules, FrSky R9) and DIY hardware designs.
  4. Overview of Pomegranate Systems CAN/DroneCAN Power Module

    master

    The Pomegranate Systems CAN/DroneCAN Power Module is an intelligent power monitor and fuel gauge that provides high-resolution current and voltage monitoring with state of charge (SoC) integration. It communicates via a CANbus interface using the DroneCAN v0 protocol, making it compatible with both PX4 and ArduPilot.

    Key Specifications:

    • Battery Support: 2-6S batteries (6-26V).
    • Current Capacity: Up to 100A (requires active cooling).
    • Power Rails: Monitors battery, 5V, and 3V rails.
    • Output: Efficient 5V switching regulator providing up to 2A of low-noise current.
    • Interface: CANbus with electronic termination for simplified wiring.
    • Scalability: Supports multiple modules on the same bus to monitor multiple power sources.
  5. Overview of FlytOS Framework

    master
    FlytOS is a Linux and ROS (Robot Operating System) based software framework designed for building high-level drone applications (e.g., aerial delivery, precision agriculture, industrial inspections). It uses MAVLink to communicate with the autopilot and provides high-level FlytAPIs to control vehicle navigation and payloads like gimbals and cameras. The framework is modular, allowing integration with external ROS/Linux libraries and custom data plumbing between onboard and offboard applications.
  6. Overview of APM Planner 2.0

    master

    APM Planner 2.0 is an open-source ground station application designed for MAVLink-based autopilots, including APM and PX4/Pixhawk. It is cross-platform and runs on Windows, Mac OSX, and Linux.

    Key capabilities include:

    • Configuration and Calibration: Set up and calibrate ArduPilot or PX4 autopilots for autonomous vehicle control.
    • Mission Planning: Plan missions using GPS waypoints and control events.
    • Telemetry and Command: Connect via 3DR Radio to view live flight data and initiate commands during flight.
  7. Overview of APSync

    master

    APSync is a tool designed to simplify companion computer setup for ArduPilot, providing integrated WiFi access, DataFlash logging to the companion computer, and real-time video streaming.

    Note: APSync is deprecated. It is recommended to use BlueOS or Rpanion-server instead.

    Supported Companion Computers:

    • Raspberry Pi 3 (RPi3)
    • NVidia TX1
    • NVidia TX2
    • Intel Edison (Note: Video streaming is not supported on Intel Edison)

    Core Features:

    • WiFi Access Point: Automatically creates an access point named ardupilot (password: ardupilot).
    • DataFlash Logging: Streams logs via MAVLink to the companion computer's filesystem.
    • Video Streaming: Sends a single video stream to the first ground station that requests telemetry data.
  8. Overview of Horizon31 PixC4-Jetson FMU

    master

    The PixC4-Jetson is an NDAA-compliant Flight Management Unit (FMU) and single-board computer designed for integration into end-user platforms. It is based on the FMUv5 design and includes an integrated Nvidia Jetson companion computer (compatible with Nano, Xavier NX, or TX2 NX).

    Key features of the turnkey solution include:

    • MAVLink Telemetry: Supports UDP Unicast, Multicast, and Broadcast.
    • Connectivity: LTE connection management with Layer-2 peer-to-peer VPN; supports multiple simultaneous pathways (LOS, LTE, Satcom) with stale command rejection and message deduplication.
    • Video: Multi-endpoint video encoding pipelines with customizable scripts.
    • Integration: ATAK integration and web interface for configuration and remote terminal access.
    • Cloud: Scalable connectivity to Horizon31 US servers and optional access to their cloud GCS and low-latency webRTC video distribution system (https://gcs.horizon31.com).
  9. Overview of ArduPilot peripheral hardware options

    master

    ArduPilot supports a wide range of optional peripheral hardware that can be integrated into different vehicle types (Copter, Plane, Rover, Sub). These peripherals extend the capabilities of the autopilot for tasks such as sensing, communication, and actuation.

    Available Peripheral Categories

    Depending on your vehicle type, you may choose to integrate:

    • Positioning & Navigation: GPS/Compass, ADS-B Receivers, Airspeed Sensors, Optical Flow Sensors, Rangefinders (Sonar, Lidar, Depth Cameras), and Non-GPS navigation.
    • Communication: Telemetry Radios, Remote ID, and Ethernet Adapters/Switches.
    • Actuation & Mechanical: Servos and Actuators, ESCs and Motors, Grippers, Landing Gear/Retractable Camera Mounts, Parachutes, Winches, and Crop Sprayers.
    • Sensing & Monitoring: Power Modules, Fuel Flow and Level Sensors, RPM Sensors, Temperature Sensors, and BlackBox Loggers.
    • User Interface: On-Screen Display (OSD), Onboard Displays, Joysticks/Gamepads, and Safety Switches.
    • Advanced Systems: Companion Computers, DroneCAN Peripherals/Adapters, External AHRS Systems, and High Definition Video.
  10. Overview of Plane Failsafe Functions

    master

    ArduPilot Plane provides several failsafe mechanisms to protect the aircraft during signal or hardware loss. The core functions include:

    1. RC Failsafe: Triggered by loss or corruption of RC signals, receiver-reported failsafe bits (e.g., SBUS), or the throttle channel falling below THR_FS_VALUE. This must be enabled by setting THR_FAILSAFE = 1.
    2. GCS Failsafe: Detects loss of telemetry from the Ground Control Station and can trigger programmable actions like Return to Launch (RTL).
    3. GPS Failsafe: Detects loss of GPS for more than 20 seconds and switches the aircraft into Dead Reckoning mode until the signal is regained.
    4. Battery Failsafe: Detects low voltage or low remaining capacity and initiates a response like RTL.

    Important Limitations: Failsafe will not detect individual RC channel failures, distance from the pilot, autopilot hardware failures (brownouts/reboots), software errors, or motor failures.

  11. Overview of ArduPilot Plane firmware

    master

    ArduPilot Plane is an open-source firmware designed for fixed-wing aircraft and VTOL (Vertical Take-Off and Landing) fixed-wing aircraft. It provides full autonomous capabilities, including support for hundreds of 3D waypoints, automatic take-off and landing, sophisticated mission planning, and camera controls.

    Key Capabilities:

    • Autonomous Flight: Supports complex missions with 3D waypoints.
    • VTOL Support: Includes configurations for aircraft that transition between hovering and cruising.
    • Mission Operations: Works with various Ground Control Station (GCS) software for programming and real-time control.

    Critical Requirement: Success with Plane requires that the 'First Time Setup' and 'First Flight and Tuning' sections of the documentation be read and followed strictly.