Our contributions to ROS 2 Galactic
At the end of May, our friends at Open Robotics released ROS 2 Galactic. Galactic is an interim release towards the next ROS 2 LTS release, and will be supported until November 2022 (at which point the next ROS 2 LTS release will be released too).
Apex.AI and many others contributed to the Galactic release; some of the notable features we implemented are:
Performance improvements in the ROS Middleware (RMW) plugin for Cyclone DDS, for example, adding the option to enable asynchronous writing at the DDS networking level
Overhaul of the tools used to record and replay data to bolster performance and enable automotive use-cases with respect to data replay
Features and improvements in the C++ client library, rclcpp
Galactic is the first release with Cyclone DDS as the default middleware. Apex.AI worked with ADLINK to integrate Eclipse iceoryx with Cyclone DDS. iceoryx provides a zero copy data transport implementation for intra-SOC communication. With iceoryx now available in ROS 2, developers are able to optimize how data moves through the system. This is valuable for all robotic applications, but particularly for autonomous vehicles due to the high bandwidth generated by having numerous camera and LiDAR sensors.
The features for Galactic are also available in Apex.Middleware, which integrates iceoryx, SOME/IP, and DDS for automotive applications.