micro-ROS demos for Renesas e2 studio

December 3, 2025 ยท View on GitHub

banner banner

micro-ROS demos for Renesas e2 studio

micro-ROS HIL tests micro-ROS HIL agent

This package provides example projects for using micro-ROS in a Renesas e2 studio. All demos target Renesas RA family, an ARM Cortex-M based MCU series, enabling a full micro-ROS compatibility for developing robotics and IoT applications.


Target platform

MCUFamilyReference boardTransports
RA6M5RA SeriesEK-RA6M5USB-CDC
Serial UART
UDP (FreeRTOS + TCP)
UDP (ThreadX + NetX)
TCP (AWS Secure Sockets)
CAN FD
RA6T2RA SeriesMCK-RA6T2Serial UART
CAN FD
RA8T2RA SeriesMCK-RA8T2UDP (FreeRTOS + TCP)

Requirements

  • Renesas e2 studio for Linux1
  • FSP v6.1.0 (backwards compatible from 5.6.0) board packs for Renesas e2 studio: Details.
  • GNU Arm Embedded Toolchain v10.3.1.20210824 (Other compatible toolchain may work).
  • Install colcon and dependencies, for example with:
pip3 install colcon-common-extensions catkin_pkg lark-parser empy

1 Currently only support for Linux is available

Available demos

BoardRTOSTransportDescriptionFolder
EK-RA6M5Bare MetalCAN FDmicro-ROS using a CAN FD transportmicro_ros_can
Bare MetalUARTmicro-ROS using a serial UART transportmicro_ros_uart
Bare MetalUSBmicro-ROS using a serial USB-CDC transportmicro_ros_usb
FreeRTOSUDPmicro-ROS using a network transport and FreeRTOS + TCPmicro_ros_udp_freertos
FreeRTOSUDPmicro-ROS using a network transport and FreeRTOS + TCP in a multithread approachmicro_ros_udp_freertos_multithread
FreeRTOSTCPmicro-ROS using a wifi network transport and AWS Secure Socketsmicro_ros_tcp_freertos
ThreadXUDPmicro-ROS using a network transport and ThreadX + NetXmicro_ros_udp_threadx
MCK-RA6T2Bare MetalCAN FDmicro-ROS using a CAN FD transportmicro_ros_can
Bare MetalUARTmicro-ROS using a serial UART transportmicro_ros_uart
MCK-RA8T2FreeRTOSUDPmicro-ROS using a network transport and FreeRTOS + TCPmicro_ros_udp_freertos

Demo Videos

A set of step-by-step demonstration videos for micro-ROS with Renesas e2studio

BoardDescriptionLink
EK-RA6M5micro-ROS getting started videolink
EK-RA6M5micro-ROS Service demolink
EK-RA6M5micro-ROS over Wifilink
EK-RA6M5micro-ROS publisher demolink
EK-RA6M5micro-ROS parameter demolink
MCK-RA6T2BLDC Motor Controller using Microros over CAN FDlink
MCK-RA8T2micro-ROS over UDP (FreeRTOS)link

Getting started

For using those demos, just clone recursively this repository in your computer with:

git clone --recurse-submodules https://github.com/micro-ROS/micro_ros_renesas_demos

Open Renesas e2 studio, import some of them, and finally build and flash

Using the micro-ROS Agent

It is possible to use a micro-ROS Agent just by using this docker command:

# UDPv4 micro-ROS Agent
docker run -it --rm -v /dev:/dev -v /dev/shm:/dev/shm --privileged --net=host microros/micro-ros-agent:$ROS_DISTRO udp4 --port 8888 -v6

# TCPv4 micro-ROS Agent
docker run -it --rm -v /dev:/dev -v /dev/shm:/dev/shm --privileged --net=host microros/micro-ros-agent:$ROS_DISTRO tcp4 --port 8888 -v6

# Serial micro-ROS Agent
docker run -it --rm -v /dev:/dev -v /dev/shm:/dev/shm --privileged --net=host microros/micro-ros-agent:$ROS_DISTRO serial --dev [YOUR BOARD PORT] -v6

# CAN FD micro-ROS Agent
docker run -it --rm -v /dev:/dev -v /dev/shm:/dev/shm --privileged --net=host microros/micro-ros-agent:$ROS_DISTRO canfd --dev [YOUR CAN INTERFACE] -v6

There are some other options for using the micro-ROS Agent:

License

This repository is open-sourced under the Apache-2.0 license. See the LICENSE file for details. To find a list of other open-source components included in this repository, see the file 3rd-party-licenses.txt.

Known Issues / Limitations

There are no known limitations.