Repo symbol

riot-ros2 repository

Repo symbol

riot-ros2 repository

Repo symbol

riot-ros2 repository

Repo symbol

riot-ros2 repository

Repository Summary

Description ROS2 on microcontrollers !
Checkout URI https://github.com/astralien3000/riot-ros2.git
VCS Type git
VCS Version master
Last Updated 2018-07-05
Dev Status UNKNOWN
Released UNRELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Packages

Name Version
listener_c 0.0.0
pub_int32_c 0.0.0
sub_int32_c 0.0.0
talker_c 0.0.0
riot 0.0.0

README

RIOT-ROS2

This project enables ROS2 to run on microcontrollers using the RIOT Operating System and the NDN protocol. More information about the design of this project is available in the wiki.

Package support

ROS2 is composed of several layers. Some have been modified to be able to run on microcontroller. Here is a summary of the main difference between the ROS2 stack and the RIOT-ROS2 stack :

Layer Package ROS2 RIOT-ROS2
ROS Client Library bindings rclc :heavy_check_mark: :heavy_check_mark:
  rclcpp :heavy_check_mark: :x:
ROS Client Library rcl :heavy_check_mark: :heavy_check_mark:
ROS MiddleWare rmw_fastrtps :heavy_check_mark: :x:
  rmw_ndn :grey_question: :heavy_check_mark:
ROS IDL Generators generator_c :heavy_check_mark: :heavy_check_mark:
  generator_cpp :heavy_check_mark: :x:
ROS IDL Type Support introspection_c :heavy_check_mark: :x:
  introspection_cpp :heavy_check_mark: :x:
  cbor :grey_question: :heavy_check_mark:
ROS IDL Interfaces common_interfaces :heavy_check_mark: :heavy_check_mark:
  rcl_interfaces :heavy_check_mark: :heavy_check_mark:

Examples

All examples should be able to handle any RMW implementation (see Usage).

std_msgs::String

std_msgs::Int32

Usage

Requirements

Ubuntu

sudo apt install cmake git python3-pip python3-empy g++-multilib
pip3 install vcstool

If pyparsing is not installed :

pip3 install pyparsing

If your arm-none-eabi-gcc is too old (< gcc 5) :

sudo add-apt-repository ppa:team-gcc-arm-embedded/ppa
sudo apt-get update
sudo apt install gcc-arm-embedded

Required for RIOT (native) :

sudo apt install libc6-dev-i386

Fedora

Required for ROS2 :

sudo dnf install cmake git python3-pip python3-empy python3-pyparsing
pip3 install vcstool
# if g++ is not already installed
sudo dnf install gcc-c++

Required for RIOT (native) :

sudo dnf install glibc-devel.i686

Others

Please, follow the requirements for ros2 official installation instructions.

Get the sources

```sh mkdir -p ~/ros2_riot_ws/src cd ~/ros2_riot_ws wget https://raw.githubusercontent.com/astralien3000/riot-ros2/master/ros2.repos wget https://raw.githubusercontent.com/astralien3000/riot-ros2/master/ament2riot.cmake vcs import src < ros2.repos

File truncated at 100 lines see the full file

Repo symbol

riot-ros2 repository

Repo symbol

riot-ros2 repository

Repo symbol

riot-ros2 repository

Repo symbol

riot-ros2 repository