Thanks, somehow I’d missed that project!
Very interesting as I hadn’t considered a pure cpp approach. I’ll have to watch the talk and update my spreadsheet of options.
@sloretz I’d be curious if you have general thoughts about the cpp-based approach. Do you think it would provide a solid foundation for such an app, which would be supportable/maintainable by the community in the longer term?
I see you have a very nice overview of some problems encountered - I’m wondering if its better to just avoid any DDS-based options in general to avoid these issues - perhaps an app using only websocket/tcp for comms will be easier to support and maintain in the long run and easier for students to get their head around in a short amount of time!
It was this comment that got me thinking down these lines:
After spending significant time on this, I created a trivial Websocket/JSON bridge (using our Java implementation) to talk to ROS2 which is much less work to support than even just installing/building ROS2.
I think that unfortunately, the current ROS2 ecosystem makes the easiest way to expose ROS2 in an existing application written in a different language than C/C++ (or a C/C++ application with a legacy build system/main) is to use a service like https://github.com/RobotWebTools/ros2-web-bridge