Is iceoryx compatible with composable components?
If I run a launch file that looks like this:
def generate_launch_description():
PubImageComponent = ComposableNode(
# whatever
)
SubImageComponent = ComposableNode(
# whatever
)
"""Generate launch description with multiple components."""
container = [
ComposableNodeContainer(
name='container1',
namespace='',
package='rclcpp_components',
executable='component_container_mt',
composable_node_descriptions=[
PubImageComponent,
],
output='screen',
),
ComposableNodeContainer(
name='container2',
namespace='',
package='rclcpp_components',
executable='component_container_mt',
composable_node_descriptions=[
SubImageComponent
],
output='screen',
)
]
return launch.LaunchDescription(container)
RMW_IMPLEMENTATION=rmw_iceoryx_cpp ros2 launch sample_pub sample.launch.py
fails with:
[INFO] [launch]: All log files can be found below /home/docker/.ros/log/2021-10-14-16-38-42-237112-foo
[INFO] [launch]: Default logging verbosity is set to INFO
Log level set to: [Warning]
Task exception was never retrieved
future: <Task finished name='Task-2' coro=<LaunchService._process_one_event() done, defined at /opt/ros/galactic/lib/python3.8/site-packages/launch/launch_service.py:226> exception=RCLError('failed to create client: rmw_iceoryx_cpp does not support clients., at /home/docker/iceoryx_ws/src/rmw_iceoryx/rmw_iceoryx_cpp/src/rmw_client.cpp:36, at /tmp/binarydeb/ros-galactic-rcl-3.1.2/src/rcl/client.c:111')>
There's something in rclcpp
(perhaps) trying to launch a client, although using the default CycloneDDS ros2 client list
doesn't show anything.
If I try via command line according to https://docs.ros.org/en/galactic/Tuto...:
$ RMW_IMPLEMENTATION=rmw_iceoryx_cpp ros2 run rclcpp_components component_container
Log level set to: [Warning]
2021-10-14 16:45:52.073 [Warning]: Requested queue capacity 1000 exceeds the maximum possible one for this subscriber, limiting from 1000 to 256
$ ros2 component list
$
I should see /ComponentManager
, but nothing appears. Is it possible to use IceOryx along with Composable Nodes?
Just an observation: I feel your questions are interesting and touch on some important parts of the UX of ROS 2 right now. Unfortunately there don't appear to be enough ROS 2-experienced users here to answer them.
The people who could answer this question likely don't frequent ROS Answers, so you may want to reach out to the Iceoryx / Cyclone devs via some other channel.