Rosanswers logo

Hi, I'm wondering if there is an efficient way or best-practice on how to use existing RTI dds idl descriptions with ROS2. Since we have a complete legacy system running with RTI dds, it would be awesome to be able to communicate with it using ROS2.

I was thinking to have a deep look into ros2 message generation and figure out if it is possible to use existing idls. As far as i'm aware, when using rti dds as middleware, ros2 is generating idl files form msg definitions as an intermediate step. so hooking inbetween that process with existing idl files seems reasonable.

BR Jochen

Originally posted by jochen.mueck on ROS Answers with karma: 48 on 2017-09-26

Post score: 1

Original comments

Comment by gvdhoorn on 2017-09-26:
I know it's confusing, but following a recent discussion (on ROS Discourse: here), ROS2 questions are right now better asked in the ng-ros category on ROS Discourse.

Comment by MTDzi on 2020-08-11:
I've stumbled upon a large repo containing a bunch of .msg files which might serve as inspiration for manually converting .idl files into .msg: https://github.com/ros2/common_interfaces That's not what the OP wanted, so this is not an actual answer but just a comment.


1 Answer 1


Rosanswers logo

Currently there is no out-of-the-box way to provide an .idl file directly and use that. All .idl files are being generated from the .msg files and they use a pretty custom mapping (which adds namespaces as well as suffixes) so your existing .idl files will very likely not match the generated types exactly.

Originally posted by Dirk Thomas with karma: 16276 on 2017-09-26

This answer was ACCEPTED on the original site

Post score: 0

Original comments

Comment by jochen.mueck on 2017-09-26:
thanks for pointing that out to me again :-) i just re-discovered the discussion at https://discourse.ros.org/t/ros2-and-dds-messaging/1556 Although I have to say that at is kind of a bummer to not being able to smoothly communicate with existing DDS Systems.

Comment by Dirk Thomas on 2017-09-26:
Both systems are able to "smoothly" communicate. For your use case you would need to generate .msg files from .idl files which nobody has implemented. I think nobody has done that since there are cases where that transformation isn't possible since IDL supports more features than .msg.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.