7.1. Support for Fast DDS v3¶
Vulcanexus now includes support for the new Fast DDS major version 3, the latest version of the Data Distribution Service (DDS) implementation from eProsima. Fast DDS v3.0.0 introduces a range of improvements that align with Vulcanexus’s mission to provide seamless and efficient middleware solutions for robotics, automotive, aerospace, and other high-demand industries.
7.1.1. Most relevant features¶
Fast DDS v3.0.0 comes with significant changes and improvements, such as:
Dynamic Language Binding API according to OMG XTypes v1.3 specification.
RTPS layer APIs refactor.
Extended XML configurations (e.g FlowControllers).
Improvements on creation of RTPS messages.
Public API and namespace update.
Project renamed to
fastdds
.Refactored examples.
Removed deprecated fastrtps-related API.
Further improvements can be found in Fast DDS v3.0.0.
Warning
The new feature to support XTypes might increase discovery traffic during start up. If a high load during discovery is experienced, it is recommended to disable the new feature. This can be accomplished with the following XML. Please refer to disable type propagation for more information.
<?xml version="1.0" encoding="UTF-8" ?>
<dds xmlns="http://www.eprosima.com">
<profiles>
<participant profile_name="no_xtypes" is_default_profile="true">
<rtps>
<propertiesPolicy>
<properties>
<property>
<name>fastdds.type_propagation</name>
<value>disabled</value>
</property>
</properties>
</propertiesPolicy>
</rtps>
</participant>
</profiles>
</dds>
7.1.2. Implications¶
The following considerations have to be taken into account when using Vulcanexus with Fast DDS v3:
Communicating Vulcanexus with Fast DDS native applications:
Update Fast DDS version to v3.0.0 or higher. You can refer to our Migration guide for more detailed information.
When generating types, the minimum required version of Fast DDS-Gen is v4.0.0. If this version is used, the extensibility must be explicitly marked as
@extensibility(FINAL)
in idl structs. However, starting from Fast DDS-Gen v4.0.1, it can be left unspecified, as it will default to@final
. Please, refer to Fast DDS data types extensibility for further information about type extensibility.
Make sure that the QoS setting for Data Representation is set to
XCDR_DATA_REPRESENTATION
.