NEW Binary entities creation mode supported in micro-ROS!

OFERA is happy to announce that micro-ROS has updated the RMW default creation mode to Binary mode. This saves around 1 kB of static memory in RAM in a typical micro-ROS build.

Up to now, eProsima Micro XRCE-DDS Client describes DDS entities that are created in the Agent by using an XML description or a Reference to an existing XML description in the Agent side. The Reference mode is available through configuration flags and the XML mode has been upgraded to Binary mode in the micro-ROS RMW.

The support of the Binary entity creation mode allows the Micro XRCE-DDS Client to create DDS entities in the Agent using a common serialized format described in IDL by the OMG.

The new Binary entity creation mode brings remarkable advantages:

  • More flexibility than Reference mode because the Client can describe the DDS entities easily.
  • More memory consumption saving because the Client does not need to handle and store XML strings (usually hundreds of bytes).

The Binary entity creation mode has an initial subset of DDS QoS that can be set in the Client library. Those QoS are lightweight because usually they are just a bitmask for enabling/disabling QoS and operation modes.

See the associated PRs in the Micro XRCE-DDS library (General, Client, Agent) and in micro-ROS’ Client RMW and Agent.

2 Likes

This is great!

Out of curiosity, is there a location in which image sizes are being tracked? I’m curious what the tiniest SOC I can get away with is :grinning_face_with_smiling_eyes:

1kB is an awesome amount to be saving but context is key!