Skip to content

Separate QoS profiles for publishers and subscribers to resolve durability mismatch warnings#231

Open
NghiemLg wants to merge 2 commits into
PX4:mainfrom
NghiemLg:fix-issue-incompatible_QoSpython
Open

Separate QoS profiles for publishers and subscribers to resolve durability mismatch warnings#231
NghiemLg wants to merge 2 commits into
PX4:mainfrom
NghiemLg:fix-issue-incompatible_QoSpython

Conversation

@NghiemLg
Copy link
Copy Markdown

@NghiemLg NghiemLg commented Mar 4, 2026

Details:
When running the offboard example:
ros2 run px4_ros_com offboard_control.py
The following warnings were displayed:
[WARN] [offboard_control_takeoff_and_land]: New publisher discovered on topic '/fmu/out/vehicle_status', offering incompatible QoS. No messages will be received from it. Last incompatible policy: DURABILITY
Root cause:
Both publishers and subscribers in offboard_control.py used the same default QoS profile.
However, PX4 topics such as /fmu/out/vehicle_status use Transient Local durability,
while ROS 2’s default subscriber QoS is Volatile, causing incompatibility.

Fix implemented:
Replaced the old shared qos_profile with two distinct QoS profiles:
Publishers now use Transient Local durability to match PX4 topics.
Subscribers remain Volatile, ensuring they receive live data without attempting to fetch historical messages.

@NghiemLg NghiemLg force-pushed the fix-issue-incompatible_QoSpython branch from 2c16935 to f808b35 Compare March 5, 2026 06:48
NghiemLg added 2 commits March 6, 2026 00:26
Separate QoS profiles for publisher and subscriber in offboard_control.py
to avoid ROS2 incompatible QoS warnings when subscribing to PX4 topics
such as /fmu/out/vehicle_status and /fmu/out/vehicle_local_position.

Signed-off-by: NghiemLg <nghiem.lg200104@gmail.com>
Signed-off-by: NghiemLg <nghiem.lg200104@gmail.com>
@NghiemLg NghiemLg force-pushed the fix-issue-incompatible_QoSpython branch from 8a4cd5f to 7d18ce9 Compare March 5, 2026 17:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant