[ros-users] [Discourse.ros.org] [Next Generation ROS] ROS2 on microcontrollers with RIOT

Loïc Dauphin ros.discourse at gmail.com
Wed Aug 2 09:49:51 UTC 2017



Yes, that include the comms stacks.
The wireless communication is [IEEE 802.15.4](https://en.wikipedia.org/wiki/IEEE_802.15.4). In the user application point of view, RIOT provides a net interface similar to the interfaces you can find with Linux. RIOT have a fully working UDP/IPv6 stack (I use it in my project). I think TCP is also working, but I never used it, same for IPv4. About Ethernet, it depends on how you would use it.

Before choosing between NDN and MQTT, let me quickly list the pros and cons

 - NDN
:heavy_check_mark: replace the full TCP/UDP/IP stack
:heavy_check_mark: is topic-oriented by design
:white_check_mark: is decentralized by design
:white_check_mark: can be used on top of TCP/UDP/IP as well as directly on the MAC Layer (ethernet, 802.15.4, ...)
:x: is still an active research topic and not standardized
:x: currently don't provide the ROS2 communication patterns (Pub/Sub, Services)
(but I implemented a beginning of Pub/Sub)

 - MQTT-SN
:heavy_check_mark: is based on UDP/IP
:heavy_check_mark: is topic-oriented by design
:white_check_mark: provide a Pub/Sub communication that fits well ROS.
:white_check_mark: is quite standardized
:x: is centralized by design (needs a broker)
:x: don't provide the ROS' Services communication pattern

For me, as a PhD student, NDN seems more interesting than MQTT, but harder to integrate in ROS2. But the thing is that I need to compare any of my implementation to something. Since I was not able to use DDS on my hardware, I just tried these 2 solutions, which may not be the only two I will try.





---
[Visit Topic](https://discourse.ros.org/t/ros2-on-microcontrollers-with-riot/1293/9) or reply to this email to respond.




More information about the ros-users mailing list