Skip to content

Controller Spawner launch extension #2454

@SuperJappie08

Description

@SuperJappie08

Is your feature request related to a problem? Please describe.
I was attempting to do some dynamic controller configuration and remapping from a launch file (using the xml front-end).
During this I ran into parsing issues with the dynamically created --controller-ros-args, since launch attempts to split the arguments in an unescapable way (hardcoded it works fine, so no real issue in a more normal case).
Furthermore, it is currently not easily possible to set controller parameters that are defined only in a launch file.

Describe the solution you'd like
A launch extension, like provided with ros_gz_sim and ros_gz_bridge in which special launch actions get exposed to spawn and unspawn hardware.
This could be part of the controller_manager package (similar to the Gazebo case) or a separate package (launch_ros2_control), similar to launch_ros.

Describe alternatives you've considered
Writing a Python launch file, which is inconvenient since it is introducing a lot more more complexity to do something relatively simple.
While using a launch front-end (like launch_xml or launch_yaml) could also easily suffice.

Additional context
I would be willing to help realize this feature.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions