Repolode
JacopoPan

JacopoPan/aerial-autonomy-stack

An open ROS2 framework to simulate and deploy perception-based drone swarms across PX4, ArduPilot and Betaflight autopilots.

Stars
655
Forks
112
Open issues
6
Last commit
24 hours ago

What is it?

Aerial autonomy stack (AAS) is a containerized software harness for developing multi-drone autonomy. It runs PX4, ArduPilot and Betaflight flight controllers in simulation with Gazebo, covering quadrotors, quadplane VTOLs and tailsitters, and exposes a ROS2 action-based interface to control them.

The stack includes perception components such as YOLO object detection with ONNX GPU runtimes and LiDAR odometry via KISS-ICP, along with several 3D worlds for perception-based testing. Simulations can run faster than real time, be stepped through a Gymnasium environment, and be launched as multiple parallel instances.

The same codebase targets real hardware on NVIDIA Jetson Orin boards using JetPack, DeepStream and TensorRT in Docker, and supports hardware-in-the-loop testing of onboard compute.

Key features

  • 01Simulates PX4, ArduPilot and Betaflight multi-vehicle setups with quadrotors, VTOLs and tailsitters.
  • 02Provides ROS2 action interfaces for takeoff, land, orbit and offboard control.
  • 03Runs YOLO detection and LiDAR odometry with ONNX GPU runtimes.
  • 04Offers a Gymnasium environment and faster-than-real-time, multi-instance simulation.
  • 05Supports Dockerized simulation and deployment on NVIDIA Jetson Orin.
  • 06Includes Zenoh-based inter-vehicle communication and a dual network for simulated sensors and vehicle comms.

Use cases

  • Prototyping multi-drone formation or swarm behaviors before flight tests.
  • Training or evaluating reinforcement learning policies with a Gymnasium interface.
  • Testing perception pipelines such as detection and LiDAR odometry in simulated 3D worlds.
  • Deploying onboard perception and control code to Jetson-based drones.

Quick start

  1. 1

    Install git, xterm, xfonts-base, wget and unzip

    sudo apt update && sudo apt install -y git xterm xfonts-base wget unzip
  2. 2

    Clone the repository and enter the tools folder

    git clone https://github.com/JacopoPan/aerial-autonomy-stack.git && cd aerial-autonomy-stack/tools_and_docs/
  3. 3

    Check that NVIDIA driver, Docker and nvidia-container-toolkit are installed

    ./tests/check_requirements.sh
  4. 4

    Build the simulation images (first build takes about 45 minutes)

    ./sim_build.sh

Things to know

  • Requires an NVIDIA GPU with driver, Docker and nvidia-container-toolkit.
  • Developed and tested on Ubuntu 24.04; Windows 11 needs WSL.
  • The first build takes roughly 45 minutes.

In collections

Topics

#drone#ros2#simulation#px4#ardupilot#swarm#computer-vision#jetson#betaflight#fixed-wing

FAQ

What is aerial-autonomy-stack?
An open ROS2 framework to simulate and deploy perception-based drone swarms across PX4, ArduPilot and Betaflight autopilots. Aerial autonomy stack (AAS) is a containerized software harness for developing multi-drone autonomy. It runs PX4, ArduPilot and Betaflight flight controllers in simulation with Gazebo, covering quadrotors, quadplane VTOLs and tailsitters, and exposes a ROS2 action-based interface to control them.
Is aerial-autonomy-stack free to use? What license does it have?
aerial-autonomy-stack is open source under the MIT license. Check the license terms before using it in commercial products.
Is aerial-autonomy-stack still maintained?
Actively maintained. The last commit to aerial-autonomy-stack was on Nov 6, 2026.
What can I use aerial-autonomy-stack for?
Prototyping multi-drone formation or swarm behaviors before flight tests. Training or evaluating reinforcement learning policies with a Gymnasium interface. Testing perception pipelines such as detection and LiDAR odometry in simulated 3D worlds. Deploying onboard perception and control code to Jetson-based drones.
How do I install aerial-autonomy-stack?
Install git, xterm, xfonts-base, wget and unzip: sudo apt update && sudo apt install -y git xterm xfonts-base wget unzip Clone the repository and enter the tools folder: git clone https://github.com/JacopoPan/aerial-autonomy-stack.git && cd aerial-autonomy-stack/tools_and_docs/ Check that NVIDIA driver, Docker and nvidia-container-toolkit are installed: ./tests/check_requirements.sh Build the simulation images (first build takes about 45 minutes): ./sim_build.sh
Where can I get aerial-autonomy-stack?
The source code and installation instructions are on GitHub: https://github.com/JacopoPan/aerial-autonomy-stack

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects