data-distribution-serviceros2rti-dds

Setting up the RTI DDS configuration file in ROS2


I am interfacing ROS2 with native RTI DDS using xml app creation i.e. means all the QoS settings are in this xml file.

Now, for the native DDS application, I can set this .xml file but how can I set a similar sort of a configuration file for a ROS2 based function ?


Solution

  • Have you reviewed the material in: https://github.com/ros2/ros2/wiki/About-Quality-of-Service-Settings? ROS2 has a limited set of options for setting QoS.

    You might have more success by setting the QoS policies in your DDS application to match the settings in ROS2. (BTW, this is a place where RTI Admin Console makes things a lot easier; it immediately reveals any QoS mismatches between the participants).

    The DDS QoS settings I've used to get DDS/ROS2 interoperability include:

    There are not many QoS settings made in the ROS2 RMW code; the Connext libs will look for a source of user QoS settings using the normal search order (detailed here) - meaning you can provide your own QoS settings to the Connext libs under ROS2, using a variety of methods. Here's what I did: