UAV Toolbox Support Package for PX4 Autopilots
Access PX4 autopilot peripherals with UAV Toolbox and automatically build and deploy flight control algorithms with Embedded Coder
Updated 15 Mar 2023
Using the UAV Toolbox Support Package for PX4® Autopilots, you can access autopilot peripherals from MATLAB® and Simulink®. With Embedded Coder®, you can also automatically generate C++ code and use the PX4 toolchain to build and deploy algorithms tailored specifically for Pixhawk® and Pixracer flight management units (FMU), all while incorporating onboard sensor data and other PX4-specific services. PX4 is a trademark of Lorenz Meier.
- Out of the box support for Cube Orange, Pixhawk 1, Pixhawk 2.1 (Cube), Pixracer and Pixhawk 4. Other FMU based boards are also supported.
- Automated C++ Code - generation, Integration of code generated from Simulink with the general PX4 architecture Deployment, and Execution on the Pixhawk boards.
- Hardware-in-the-Loop (HITL) Simulation support with the PX4 Autopilot.
- Example in Simulink that shows the UAV Dynamics including the sensor simulation communicated to PX4 Autopilot in Hardware-in-the-Loop (HITL) Simulation.
- Deployment support for PX4 on host computer as PX4 Host Target which the PX4 community refers to as PX4 Software-In-The-Loop (PX4 SITL).
- Support for Code verification and validation using the Processor-In-Loop simulation.
- Simulink library to access the Pixhawk peripherals such as ADC, PWM, Serial and I2C.
- Simulink library for the uORB middleware.
- Simulink library to get data from the PX4 sensor and estimator module such as Accelerometer, Gyroscope, Magnetometer, Battery, Vehicle Attitude and GPS.
- Data logging support from Simulink on the SD card while flying.
- Communicate with the Pixhawk hardware and PX4 Host Target using Connected I/O mode.
- Real-Time parameter tuning and signal acquisition using Monitor & Tune.
- Examples showing Position and Attitude Control for X-Configuration Quadcopter.
- Example with Simulink based plant model which communicates flight controller in PX4 Host Target.
Supported PX4 Autopilots
The following Autopilots are supported out-of-the box in the support package
- Cube Orange
- mRo Pixhawk 1
- ProfiCNC Pixhawk 2.1 (Cube)
- mRo Pixracer
- Holybro Pixhawk 4
Apart from the above boards, other FMU based boards can be used with the support package by selecting the Hardware board as PX4 Pixhawk Series. More details on this can be found here.
- Main Page
- Setup and Configuration
- Deploy algorithms on PX4 Autopilot
- Hardware-in-the-loop (HITL) simulation with PX4 Autopilot
- Host Target simulation with PX4
- Release Notes
- Deployment on Cube Orange Autopilot from Simulink
- Getting started with uORB blocks in Simulink
- Run Connected I/O Simulation on Pixhawk boards
- Send and Receive Serial data from Pixhawk boads in Simulink
- Getting started with PWM Block in Simulink to send actuator data to Pixhawk hardware
- Read PX4 System parameters in Simulink
- Read Accelerometer values in Simulink from I2C based sensor connected to Pixhawk 4
- Log data on SD Card connected to Pixhawk boards
- Run Processor-in-Loop Simulation on Pixhawk boards
Hardware-in-the-loop (HITL) with PX4 Autopilot Examples
- PX4 Autopilot in Hardware-in-the-Loop (HITL) Simulation with UAV Dynamics in Simulink
- Scenario Simulation and Flight Visualization with PX4 Hardware-in-the-Loop (HITL) and UAV Dynamics in Simulink
- PX4 Hardware-in-the-Loop (HITL) Simulation with Fixed-Wing Plant in Simulink
- Obstacle Avoidance in NVIDIA Jetson with PX4 Autopilot in Hardware-in-the-Loop (HITL) Simulation with UAV Dynamics Modeled in Simulink
Host Target Simulation with PX4 Examples
- Position Tracking for X-Configuration Quadcopter Using Rate Controller
- Maneuvre drone on jMAVSim with Joystick or RC Transmitter while Attitude Controller is running on PX4 Host Target
- Simulink based plant model communicating with Flight Controller running on PX4 Host Target
If you have any support package download or installation problems, obtain the installation file log by following the instructions mentioned here and contact - Technical Support with the installation log.
MATLAB Release Compatibility
Created with R2018b
Compatible with R2018b to R2023a
Platform CompatibilityWindows macOS Linux
- Code Generation > Embedded Coder > Deployment, Integration, and Supported Hardware > Embedded Coder Supported Hardware >
- Industries > Aerospace and Defense >
- Robotics and Autonomous Systems > UAV Toolbox > UAV Toolbox Supported Hardware >
- Aerospace > UAV Toolbox > UAV Toolbox Supported Hardware >
- Engineering > Aerospace Engineering > UAV >
Find more on Embedded Coder Supported Hardware in Help Center and MATLAB Answers
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!Start Hunting!
Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.