The presented solution leverages Zenoh to connect to a ROS2 system using mobile devices.
The main advantage is that the mobile devices can use the same ROS2 APIs as the main system without the complexities of the default DDS protocol.
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Mobile Gateway for ROS2 Systems with Zenoh
1. M I G E R A N
Mobile Gateways
for ROS2 Systems
with
Gergely Kis
Co-Founder / CTO
2. MIGERAN - SOFTWARE CONSULTING
About Migeran
15
YEARS
AR / VR Application
Development
Business & Mobile
Application
Development
First Own Product
Migeran for iOS
Acquired by
Multi-OS Engine
Open Source Project
Automotive AR
System Development
WayRay AG
3. MIGERAN - SOFTWARE CONSULTING
● 4 years experience with the ROS middleware
● Worked with most major versions of ROS
○ ROS1: kinetic, melodic, noetic
○ ROS2: ardent, bouncy, dashing, foxy and now rolling
● Implemented bridging between ROS1 and ROS2
○ Extended ros1_bridge support to support our use case
● Used ROS in an automotive environment
● Worked with most major ROS2 backends
○ FastRTPS, CycloneDDS, Iceoryx, Zenoh
ROS Experience
WayRay AG
5. MIGERAN - SOFTWARE CONSULTING
Standard Solution
Node 1 Node 2
Node 3 Node 4
REST Mobile
Gateway
Con: We lose the features of the ROS middleware on mobile devices!
7. MIGERAN - SOFTWARE CONSULTING
ROS2 Communication Landscape
RCL Implementation
RMW API
RCL C API
ROS2 Rust
Aplication
RCLCPP API
ROS2 C++
Application
Rust Bindings
CycloneDDS FastDDS
rmw_cyclonedds rmw_fastdds
DDS Protocol
rmw_iceoryx
rmw_zenoh
(prototype)
Iceoryx Zenoh
Zenoh-DDS-Bridge
● ROS2 has an abstracted
communication layer
● Standard backends use the DDS
protocol
● Other backends also available, e.g.
Iceoryx for shared memory
● Experimental Zenoh backend is also
available
Java Bindings
ROS2 Java /
Android
Application
…
8. MIGERAN - SOFTWARE CONSULTING
● Designed for single host and LAN based environments
● Problems in routed and wireless environments
● Standard solution: Use a VPN to package DDS traffic
ROS2 DDS Backend Limitations
Node 1 Node 2
Node 3 Node 4
Node 1 Node 2
Node 3 Node 4
VPN
Not applicable in the
Mobile environment
9. MIGERAN - SOFTWARE CONSULTING
Solution 1: Zenoh All The Way
Node 1 Node 2
Node 3 Node 4
Zenoh
Router
Challenges:
● RMW Zenoh is still experimental
● Large change to existing systems
RMW Zenoh Backend
ROS2 Framework
RCLCPP API Java Bindings
ROS2
Android
Application
Mobile Device
RMW Zenoh Backend
10. MIGERAN - SOFTWARE CONSULTING
Solution 2: Zenoh based Gateway
Node 1 Node 2
Node 3 Node 4
Zenoh
Router
Advantages:
● Minimal change to the existing system
● First step toward a system-wide Zenoh adoption
RMW Zenoh Backend
ROS2 Framework
RCLCPP API Java Bindings
ROS2
Android
Application
Mobile Device
Standard DDS
Backend
Zenoh DDS
Plugin
11. MIGERAN - SOFTWARE CONSULTING
● Production-ready Zenoh backend for ROS2
○ ROS2 backend implemented in safe Rust
○ Compatible with DDS Backends using the
Zenoh DDS Plugins
○ Even more performance in pure Zenoh
systems
○ Collaborating with ZettaScale to make this
happen
● Make ROS2 and Zenoh easier to use in
mobile apps
○ Android, iOS, React Native, …
Next Steps
RCL Implementation
RMW API
RCL C API
ROS2 Rust
Application
RCLCPP
API
ROS2 C++
Application
Rust API(s)
Zenoh
Unsafe Rust RMW API binding
Safe Rust RMW API
RMW API Implementation
12. M I G E R A N
Thank you for
your attention!
migeran.com