Create your own Custom transport in micro-ROS!

Those familiar with micro-ROS, know that the transport protocols supported by default are Serial (UART) and UDP (over WiFi and Ethernet) – of course depending on the technologies offered by the specific hardware.

However, due to the variety of the communication peripherals exposed by the platforms it supports, there might be users willing to use micro-ROS over their own transport. In order to address these cases, we offer these users the possibility to create their own desired Custom transport. This relies on a mechanism we have lately refactored so as to abstract the library as much as possible from the underlying OS.

micro-ROS inherits its new profile for Custom transports from its middleware Micro XRCE-DDS, which provides a user API that allows interfacing with the lowest level transport layer at runtime and to implement Custom transports in both the Client and the Agent. Thanks to this, the Micro XRCE-DDS wire protocol can be transmitted over virtually any protocol, network, or communication mechanism.

Find out more by reading the brand new tutorial published on our webpage!

4 Likes

Great work!

We communicate a lot with devices over a canbus. Perhaps this would be a cool transport protocol :sunglasses:.
Good to know this is available.

2 Likes

Same here. I have to say I was a little bit suprised when I learned that CAN is currently not on the list of micro-ROS transports, especially since it is supported by such a large pool of MCU’s.

1 Like

Hi!

micro-ROS supports CAN/FD in RA Family MCUs. Check the repo here:

Also, take a look at the latest release or Micro XRCE-DDS, the middleware of micro-ROS.
CAN/FD support is precisely one of the major enhancements :slight_smile:
https://micro-xrce-dds.docs.eprosima.com/en/latest/notes.html

4 Likes