Skip to content

px4_msgs

  • Software
  • Drones and boats
  • Library

ROS 2 interface package holding message and service definitions mirrored from PX4 Autopilot's uORB topics, so ROS 2 nodes can exchange data with PX4 firmware.

Made by PX4 Autopilot.

Source on GitHub: github.com/PX4/px4_msgs (opens in a new tab). Facts read at commit 9c21876 (opens in a new tab).

Licenses

Code
BSD-3-Clause (opens in a new tab)

Read by Robotheca from LICENSE (opens in a new tab) (BSD-3-Clause) at commit 9c21876 (opens in a new tab), on 16 Oct 2026.

Commercial use
Yes

What it does

  • Contains only .msg and .srv definitions plus build rules that generate C++ and Python interfaces for ROS 2 applications.
  • Definitions are copied from PX4 uORB topics, keeping a ROS 2 workspace compatible with a given PX4 firmware version.
  • Data reaches ROS 2 through the uXRCE-DDS bridge, with MicroXRCEAgent running on the companion computer.
  • PX4 publishes with best-effort QoS, so subscribers must use a matching profile to receive data.
  • Each PX4 release line has its own branch, while main tracks PX4 main; the ROS 2 distribution is chosen separately.
  • Definitions are generated and should not be edited here; changes belong in PX4-Autopilot, with automatic sync to main.

Written by Robotheca from the project's README (opens in a new tab) at commit 9c21876.

Getting started

Difficulty
Intermediate
Hardware it needs, as the project states it
A computer running a supported ROS 2 distribution (Humble, Jazzy, Kilted, Rolling, Lyrical) on its Ubuntu release; Windows and macOS are covered by CI.

Maintenance

Status
Active: a commit in the last 90 days
Newest commit
14 Oct 2026 on main
Latest release
v1.17.0 (9 Jun 2026)

Checked on GitHub on 16 Oct 2026.

Robots on Robotheca that use it

No robot on Robotheca is linked to it yet. Links come from a robot's robot.yaml, from its dependency files read as text, or from Robotheca's editors.

Robotheca lists software as a reference: nothing is hosted or run here, and every fact links to where it was read.