ROS 2 message definitions for the PX4 Autopilot project.
Building this package generates all the required interfaces to interface ROS 2 nodes with the PX4 internals.
Depending on the PX4 and ROS versions you want to use, you need to checkout the appropriate branch of this package:
PX4 | ROS 2 | Ubuntu | branch |
---|---|---|---|
v1.13 | Foxy | Ubuntu 20.04 | release/1.13 |
v1.14 | Foxy | Ubuntu 20.04 | release/1.14 |
v1.14 | Humble | Ubuntu 22.04 | release/1.14 |
v1.14 | Rolling | Ubuntu 22.04 | release/1.14 |
main | Foxy | Ubuntu 22.04 | main |
main | Humble | Ubuntu 22.04 | main |
main | Rolling | Ubuntu 22.04 | main |
When PX4 message definitions in the main
branch of PX4 Autopilot change, a CI/CD pipeline automatically copies and pushes updated ROS message definitions to this repository. This ensures that this repository main
branch and the PX4-Autopilot main
branch are always up to date.
However, if you are using a custom PX4 version and you modified existing messages or created new one, then you have to manually synchronize them in this repository:
- Checkout the correct branch associated to the PX4 version from which you detached you custom version.
- Delete all
*.msg
files inmsg/
and copy all*.msg
files fromPX4-Autopilot/msg/
in it. Assuming that this repository and the PX4-Autopilot repository are placed in your home folder, you can run:rm -f ~/px4_msgs/msg/*.msg cp ~/PX4-Autopilot/msg/*.msg ~/px4_msgs/msg/
Check Using colcon to build packages to understand how this can be built inside a workspace. Check the PX4 ROS 2 User Guide section on the PX4 documentation for further details on how this integrates PX4 and how to exchange messages with the autopilot.
Use the Issues section to create a new issue. Report your issue or feature request here.
Reach the PX4 development team on the PX4 Discord Server.