-
Notifications
You must be signed in to change notification settings - Fork 727
Description
Description
When working around #2219 by merging use_sim_time:=True into the MoveIt config dictionary, I'm seeing mixed results:
use_sim_timeis actually set toTrue🎉- The moveit_py node is crashing due to an
rclcpp::exceptions::InvalidParameterValueException
In particular it prints:
[motion_planning_python_api_tutorial.py-2] terminate called after throwing an instance of 'rclcpp::exceptions::InvalidParameterValueException'
[motion_planning_python_api_tutorial.py-2] what(): parameter 'qos_overrides./clock.subscription.durability' could not be set:
A quick search brought me to this issue comment, pointing out that use_sim_time:=True will enable qos_override callbacks on the /clock topic. Question is, why does everything work with the C++ versions MoveGroup/MoveItCpp, and why do we run into this exception with moveit_py?
I have briefly skimmed the node initialization and didn't find any obvious issues.
For context, I've been working on a MoveIt+Gazebo setup and wanted to add a MoveItPy example.
Here are instructions for running different launch files in a docker compose container. You'll find that all service targets besides python_gazebo work, python_gazebo fails for the described reason.
Your environment
- ROS Distro: Humble
- OS Version: Ubuntu 22.04
- jammy-humble binaries (main branch)
Steps to reproduce
Try passing use_sim_time:=True like this.
Expected behaviour
The launch file should work and allow using sim time with moveit_py.
Actual behaviour
The Exception is thrown, node dies.