ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question
0

Working with RMW CycloneDDS and SROS2

asked 2020-10-07 09:59:19 -0600

elias gravatar image

updated 2020-10-07 10:13:46 -0600

I've been trying to find information on combining SROS2 with CycloneDDS.

I have a full benchmark package with which I test different configurations (RMW, Security, QoS settings, etc.). For the combination where I set the folowing environment variables:

RMW_IMPLEMENTATION=rmw_cyclonedds_cpp 
ROS_SECURITY_ENABLE=true 
ROS_SECURITY_STRATEGY=Enforce

I get the folowing error message:

1602077428.219743 [23]  benchmark: Could not load Authentication library: dds_security_auth: cannot open shared object file: No such file or directory
1602077428.219749 [23]  benchmark: Could not load Authentication plugin.
1602077428.219751 [23]  benchmark: Could not load security
[ERROR] [1602077428.220364595] [rmw_cyclonedds_cpp]: rmw_create_node: failed to create DDS participant

>>> [rcutils|error_handling.c:108] rcutils_set_error_state()
This error state is being overwritten:

  'error not set, at /tmp/binarydeb/ros-foxy-rcl-1.1.7/src/rcl/node.c:276'

with this new error message:

  'rcl node's rmw handle is invalid, at /tmp/binarydeb/ros-foxy-rcl-1.1.7/src/rcl/node.c:428'

rcutils_reset_error() should be called after error handling to avoid this.
<<<
[ERROR] [1602077428.220430161] [rcl]: Failed to fini publisher for node: 1
terminate called after throwing an instance of 'rclcpp::exceptions::RCLError'
  what():  failed to initialize rcl node: rcl node's rmw handle is invalid, at /tmp/binarydeb/ros-foxy-rcl-1.1.7/src/rcl/node.c:428

I can't seem to find information if this is supposed to work with the current versions. I don't have any problem for fastdds with and without security and for cyclone without security.

Package versions:

ROS2: Foxy
ros-foxy-rmw-cyclonedds-cpp: 0.7.3-1focal.20200911.211813

Following the tutorial on https://github.com/ros2/sros2/blob/fo... results in the same error.

edit retag flag offensive close merge delete

1 Answer

Sort by » oldest newest most voted
0

answered 2020-10-19 19:15:31 -0600

evshary gravatar image

It seems that the Debian Package of CycloneDDS doesn't include security function.

I think there is something wrong (maybe lack of definition for building) while creating CycloneDDS packages for ROS 2.

However, you can workaround this by building Cyclone DDS from source code.

I've tried to use source code build instead and it works well with SROS.

edit flag offensive delete link more

Comments

a build of the release branch 0.7.x did the trick. thanks

elias gravatar image elias  ( 2020-10-22 05:58:23 -0600 )edit

Question Tools

3 followers

Stats

Asked: 2020-10-07 09:59:19 -0600

Seen: 1,933 times

Last updated: Oct 07 '20