ROS2 on microcontrollers with RIOT

Hello !

I’m here to give you some news about my project of porting ROS2 to RIOT.
I have a working proof-of-concept !

While porting the ROS2 code to RIOT, I implemented 2 new RMW which are not based on DDS :

  • using NDN
  • using MQTT-SN

To make it work on microcontrollers (they don’t support the C++ standard used in rclcpp), I also implemented a part of rclc.

As a result, I was able to make it work on a real robot.

The hardware running the ROS2 nodes are two ARM Cortex-M0+ boards, with wireless communication. The microcontroller, ATSAMR21G18A, is quite small, with only 32Kb RAM and 256Kb Flash, compared to the 192Kb RAM and 1Mb Flash STM32F407IG used for the previous NuttX-based example.

4 Likes