Skip to content

Comments

fix(planning_scene_monitor): use SensorDataQoS for joint_states subscription#3687

Open
alltheseas wants to merge 1 commit intomoveit:mainfrom
alltheseas:fix/joint-states-sensor-data-qos
Open

fix(planning_scene_monitor): use SensorDataQoS for joint_states subscription#3687
alltheseas wants to merge 1 commit intomoveit:mainfrom
alltheseas:fix/joint-states-sensor-data-qos

Conversation

@alltheseas
Copy link

Summary

  • Switch joint_states subscription in CurrentStateMonitorMiddlewareHandle from SystemDefaultsQoS (reliable) to SensorDataQoS (best-effort)
  • A reliable subscriber cannot receive from a best-effort publisher, causing silent message drops and planning_scene_monitor timeouts when robot drivers publish joint_states with best-effort QoS
  • A best-effort subscriber can receive from both reliable and best-effort publishers, making this backward-compatible

Fixes #1190

Test plan

  • Verify joint_states are received from a reliable publisher (e.g. ros2_controllers joint_state_broadcaster)
  • Verify joint_states are received from a best-effort publisher (e.g. drivers using SensorDataQoS)
  • Confirm no regression in planning_scene_monitor startup / state monitoring

🤖 Generated with Claude Code

…ription

Use SensorDataQoS (best-effort) instead of SystemDefaultsQoS (reliable)
when subscribing to joint_states in CurrentStateMonitorMiddlewareHandle.

A reliable subscriber cannot receive messages from a best-effort
publisher, causing silent message drops and planning_scene_monitor
timeouts when robot drivers publish joint_states with best-effort QoS.
A best-effort subscriber can receive from both reliable and best-effort
publishers, making this change backward-compatible.

Fixes moveit#1190

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
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.

Use SensorDataQoS() when subscribing to joint_states

1 participant