Home

Awesome

banner banner

micro-ROS demos for Renesas e<sup>2</sup> studio

micro-ROS HIL tests micro-ROS HIL agent

This package provides example projects for using micro-ROS in a Renesas e<sup>2</sup> 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 <br /> Serial UART <br /> UDP (FreeRTOS + TCP) <br /> UDP (ThreadX + NetX) <br /> TCP (AWS Secure Sockets) <br /> CAN FD
RA6T2RA SeriesMCK-RA6T2Serial UART <br /> CAN FD

Requirements

pip3 install colcon-common-extensions catkin_pkg lark-parser empy

<sup>1</sup> 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

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

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 e<sup>2</sup> 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.