PX4 Development Toolkit
Reproducible PX4 and ROS 2 development from simulation to physical flight.
Build, run, record, and analyze PX4 experiments using the same toolkit across Gazebo SITL and physical hardware.
Installation
Start with the published Docker images or install the toolkit natively on Ubuntu 24.04.
Choose an installation →Simulation
Run PX4 SITL with Gazebo, uXRCE-DDS, MAVProxy, and QGroundControl.
Run SITL →Hardware
Run the same ROS 2 workflows with a physical PX4 vehicle, serial XRCE-DDS, and Vicon motion capture.
Run on hardware →Control
Develop and evaluate Offboard controllers, geometric SE(3) control, and reusable trajectories.
Explore controllers →Analysis
Record repeatable experiments and analyze trajectories, controller behavior, and the PX4 control pipeline.
Analyze results →Choose an installation¶
Use either installation path depending on how you want to work.
Docker provides the lowest-setup path using the published SITL and hardware images.
Native installs ROS 2, PX4 dependencies, pinned sources, and the toolkit workspace directly on Ubuntu 24.04.
Both provide the same toolkit workflows after installation.
From simulation to hardware¶
The toolkit keeps the workflow consistent across the two runtime environments.
flowchart LR
D[Install toolkit] --> E{Environment}
E -->|Simulation| S[PX4 SITL + Gazebo]
E -->|Physical platform| H[PX4 hardware + Vicon]
S --> C[ROS 2 controllers]
H --> C
C --> R[Recording]
R --> A[Analysis and comparison]
Suggested first journey¶
For a new simulation user:
- Install with Docker or install natively.
- Run the SITL environment.
- Review the controller overview.
- Run the SE(3) controller.
- Record a run or run a sequence.
- Analyze and compare the results.
Documentation¶
Browse all documentation using the sidebar, or jump directly to a topic:
- Installation: Docker · Native
- Environments: SITL · Hardware
- Controllers: Overview · SE(3) · Trajectories
- Workflows: Recording · Sequences
- Analysis: Single-run analysis · Comparison
- Reference: Architecture · Configuration · Extending · Troubleshooting