SlideShare a Scribd company logo
2
Most read
4
Most read
10
Most read
Micro XRCE-DDS: Bringing DDS into
microcontrollers
www.eprosima.com
https://micro-xrce-dds.docs.eprosima.com/en/latest/
DDS: a recap
DDS: Middleware specification for
Data Distribution Service.
DDS at a glance:
● Data-centricity
● Publish-Subscribe architecture
● Global data space
● Data connectivity: many-to-many
distributed network
● QoS mechanisms
● API standard guaranteeing
interoperability among
implementations
● Dynamic Discovery
From DDS to DDS-XRCE
Publish-Subscribe paradigm Client-Server architecture
The DDS-XRCE wire protocol
DDS-XRCE: DDS for eXtremely Resource-Constrained Environment.
Clients - XRCE entities on low-resource consumption devices.
Agent - XRCE entity connected with DDS global data space. Acts on behalf of Clients in the DDS world.
Main features:
● Client-server architecture
● Request-response pattern
● Connection oriented
Micro XRCE-DDS
Main components:
● Micro XRCE-DDS Agent
● Micro XRCE-DDS Client
Additional components:
● Generator tool
● Serialization library
eProsima Micro XRCE-DDS: First
implementation of DDS-XRCE protocol.
Micro XRCE-DDS
Main components:
● Micro XRCE-DDS Agent
● Micro XRCE-DDS Client
Additional components:
● Generator tool
● Serialization library
eProsima Micro XRCE-DDS: First
implementation of DDS-XRCE protocol.
Supported OSes and RTOSes
RTOS: Real Time Operating System
Main Features:
● Works with an advanced algorithm for scheduling tasks within
maximum time limit.
● Apt for Real-Time applications
● POSIX-compliant interface
NuttX
FreeRTOS
Linux Windows
Zephyr
Client-Agent communication
Communication flow:
● Client connects to agent
(upon previous knowledge
or discovery)
● Session creation (Client
proxy instantiation)
● DDS Participant creation
● Other DDS Entities
creation
micro-ROS: puts ROS 2 onto
microcontrollers!
The solution for creating ROS 2 nodes
into embedded devices
Micro XRCE-DDS: the micro-ROS middleware
Real-Time OS
Additional
drivers, …
POSIX
Micro XRCE-DDS Client
ROS Middleware Interface (rmw)
+ Additional abstractions
micro-ROS
Agent
microcontroller
C API
rcl
C++ API
(rclcpp)
Convenience functions,
deterministic execution, …
Application
component
Application
component …
rclc:
Linux, Mac OS, Windows
DDS Implementation [Fast DDS, ..]
ROS Middleware Interface (rmw)
microprocessor
C API
rcl
C++ API
(rclcpp)
Application
component
Application
component …
Python API
(rclpy)
Apps
ROS
Client Library
ROS MW
Interface
Operating
Systems
Hardware
XRCE-DDS
DDS
Micro XRCE-DDS: the micro-ROS middleware
micro-ROS
ROS 2
Thank you!
Francesca Finocchiaro
eProsima - Team manager
francescafinocchiaro@eprosima.com
www.eprosima.com
Back-up slides
Micro XRCE-DDS Client
Micro XRCE-DDS Client:
C99 library. Features:
● UDP, TCP, and Serial
transport support
● Micro XRCE-DDS as a wire
protocol
● Full static memory
● Configurable profiles
● Streams: best effort &
reliable
● DDS entities can be created
by: XML, reference or binary
profiles
Micro XRCE-DDS Agent
Micro XRCE-DDS Agent:
C++11 application &
library. Features:
● UDP, TCP, and Serial
transport support
● Fast DDS as DDS
wire protocol
● Creates Client proxy
as DDS actor
● Configurable
● Streams: best effort &
reliable

More Related Content

PDF
2019.06.27 Intro to Ceph
PDF
DDS: The IoT Data Sharing Standard
PDF
Micro XRCE-DDS and micro-ROS
PPTX
Introduction to DDS
PDF
Rapids: Data Science on GPUs
PPTX
Introduction to Redis
PDF
UML Profile for DDS
PPTX
OpenStack Architecture and Use Cases
2019.06.27 Intro to Ceph
DDS: The IoT Data Sharing Standard
Micro XRCE-DDS and micro-ROS
Introduction to DDS
Rapids: Data Science on GPUs
Introduction to Redis
UML Profile for DDS
OpenStack Architecture and Use Cases

What's hot (20)

PPT
Best practices in deploying IBM Operation Decision Manager Standard 8.8.0
PDF
micro-ROS - New client library and middleware features
PDF
The Data Distribution Service Tutorial
PDF
10 Reasons for Choosing OpenSplice DDS
PPTX
OpenStack Introduction
PDF
DDS Security
PDF
Openstack 101
PPTX
HDInsight for Architects
PPTX
Docker 101 - Nov 2016
PPTX
Serverless computing
PDF
Docker Swarm 0.2.0
PDF
NVMe overview
PDF
The Data Distribution Service
PDF
OMG DDS: The Data Distribution Service for Real-Time Systems
PDF
Red Hat OpenShift Container Platform Overview
PPTX
What is Object storage ?
PDF
BlueStore: a new, faster storage backend for Ceph
PDF
RTI DDS Intro with DDS Secure
PPTX
VMware vSphere technical presentation
PDF
Oracle RAC 19c - the Basis for the Autonomous Database
Best practices in deploying IBM Operation Decision Manager Standard 8.8.0
micro-ROS - New client library and middleware features
The Data Distribution Service Tutorial
10 Reasons for Choosing OpenSplice DDS
OpenStack Introduction
DDS Security
Openstack 101
HDInsight for Architects
Docker 101 - Nov 2016
Serverless computing
Docker Swarm 0.2.0
NVMe overview
The Data Distribution Service
OMG DDS: The Data Distribution Service for Real-Time Systems
Red Hat OpenShift Container Platform Overview
What is Object storage ?
BlueStore: a new, faster storage backend for Ceph
RTI DDS Intro with DDS Secure
VMware vSphere technical presentation
Oracle RAC 19c - the Basis for the Autonomous Database
Ad

Similar to Micro XRCE-DDS: Bringing DDS into microcontrollers (20)

PDF
FIWARE Wednesday Webinars - The Use of DDS Middleware in Robotics (Part 2)
PDF
micro-ROS: bringing ROS 2 to MCUs
PDF
FIWARE Wednesday Webinars - The Use of DDS Middleware in Robotics (Part 1)
PPTX
Managing the Robotics Organization with Robotics – IoT
PPTX
What Can DDS Do For You?
PDF
micro-ROS: Developing ROS 2 professional applications based on MCUs
PDF
DDS-XRCE (Extremely Resource Constrained Environments)
PPTX
Distributed Systems: How to connect your real-time applications
PPTX
Fiware - communicating with ROS robots using Fast RTPS
PDF
Cyclone DDS Unleashed: The Origins
PDF
DDS-XRCE - Revised Submission Presentation (September 2017)
PPTX
DDS Advanced Tutorial - OMG June 2013 Berlin Meeting
PPTX
Open Middleware Technologies for Smart Robotics - a FIWARE Smart Fest present...
PPTX
Fiware: Connecting to robots
PDF
microROS-presentation-PX4DevSummit-2020.pdf
PDF
Fast DDS Features & Tools
PPT
Is Your Power Utility Smart Enough to Survive Another Decade
PPTX
eProsima RPC over DDS - OMG June 2013 Berlin Meeting
PDF
Business Models for Interoperability
PDF
Milsoft dds overview
FIWARE Wednesday Webinars - The Use of DDS Middleware in Robotics (Part 2)
micro-ROS: bringing ROS 2 to MCUs
FIWARE Wednesday Webinars - The Use of DDS Middleware in Robotics (Part 1)
Managing the Robotics Organization with Robotics – IoT
What Can DDS Do For You?
micro-ROS: Developing ROS 2 professional applications based on MCUs
DDS-XRCE (Extremely Resource Constrained Environments)
Distributed Systems: How to connect your real-time applications
Fiware - communicating with ROS robots using Fast RTPS
Cyclone DDS Unleashed: The Origins
DDS-XRCE - Revised Submission Presentation (September 2017)
DDS Advanced Tutorial - OMG June 2013 Berlin Meeting
Open Middleware Technologies for Smart Robotics - a FIWARE Smart Fest present...
Fiware: Connecting to robots
microROS-presentation-PX4DevSummit-2020.pdf
Fast DDS Features & Tools
Is Your Power Utility Smart Enough to Survive Another Decade
eProsima RPC over DDS - OMG June 2013 Berlin Meeting
Business Models for Interoperability
Milsoft dds overview
Ad

More from eProsima (18)

PDF
AML & ALMA: Project Overview
PDF
micro-ROS - ROS 2 into microcontrollers
PDF
Fast DDS Hello World in Windows
PDF
ROS 2 deployment in K8s: DDS Router as WAN comms enabler
PDF
Algebraic Machine Learning - On changing the rules of the game
PDF
Vulcanexus: the all-in-one ROS 2 toolset
PDF
micro-ROS Humble Hawskbill
PDF
eProsima DDS Router: a micro-ROS Cloud scenario
PDF
ROS 2 AI Integration Working Group 1: ALMA, SustainML & ROS 2 use case
PDF
ALMA - Integration of AI in ROS 2 ecosystem
PDF
micro-ROS goes easy: Developing professional applications using Eclipse based...
PDF
Towards Easy 5GS Integration in ROS2 - eProsima & Ericsson
PDF
eProsima - Company brief
PDF
micro-ROS Galactic
PDF
Integration Service: Integrating Communication Protocols
PDF
EU Project: ALMA
PDF
FIWARE Robotics
PDF
Fast RTPS
AML & ALMA: Project Overview
micro-ROS - ROS 2 into microcontrollers
Fast DDS Hello World in Windows
ROS 2 deployment in K8s: DDS Router as WAN comms enabler
Algebraic Machine Learning - On changing the rules of the game
Vulcanexus: the all-in-one ROS 2 toolset
micro-ROS Humble Hawskbill
eProsima DDS Router: a micro-ROS Cloud scenario
ROS 2 AI Integration Working Group 1: ALMA, SustainML & ROS 2 use case
ALMA - Integration of AI in ROS 2 ecosystem
micro-ROS goes easy: Developing professional applications using Eclipse based...
Towards Easy 5GS Integration in ROS2 - eProsima & Ericsson
eProsima - Company brief
micro-ROS Galactic
Integration Service: Integrating Communication Protocols
EU Project: ALMA
FIWARE Robotics
Fast RTPS

Recently uploaded (20)

PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
Network Security Unit 5.pdf for BCA BBA.
PPTX
sap open course for s4hana steps from ECC to s4
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PPTX
Big Data Technologies - Introduction.pptx
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
KodekX | Application Modernization Development
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PPTX
Spectroscopy.pptx food analysis technology
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PPT
Teaching material agriculture food technology
PDF
Empathic Computing: Creating Shared Understanding
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Digital-Transformation-Roadmap-for-Companies.pptx
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
Per capita expenditure prediction using model stacking based on satellite ima...
Diabetes mellitus diagnosis method based random forest with bat algorithm
Network Security Unit 5.pdf for BCA BBA.
sap open course for s4hana steps from ECC to s4
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Big Data Technologies - Introduction.pptx
Programs and apps: productivity, graphics, security and other tools
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
Chapter 3 Spatial Domain Image Processing.pdf
“AI and Expert System Decision Support & Business Intelligence Systems”
KodekX | Application Modernization Development
Advanced methodologies resolving dimensionality complications for autism neur...
Understanding_Digital_Forensics_Presentation.pptx
Spectroscopy.pptx food analysis technology
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Teaching material agriculture food technology
Empathic Computing: Creating Shared Understanding

Micro XRCE-DDS: Bringing DDS into microcontrollers

  • 1. Micro XRCE-DDS: Bringing DDS into microcontrollers www.eprosima.com https://micro-xrce-dds.docs.eprosima.com/en/latest/
  • 2. DDS: a recap DDS: Middleware specification for Data Distribution Service. DDS at a glance: ● Data-centricity ● Publish-Subscribe architecture ● Global data space ● Data connectivity: many-to-many distributed network ● QoS mechanisms ● API standard guaranteeing interoperability among implementations ● Dynamic Discovery
  • 3. From DDS to DDS-XRCE Publish-Subscribe paradigm Client-Server architecture
  • 4. The DDS-XRCE wire protocol DDS-XRCE: DDS for eXtremely Resource-Constrained Environment. Clients - XRCE entities on low-resource consumption devices. Agent - XRCE entity connected with DDS global data space. Acts on behalf of Clients in the DDS world. Main features: ● Client-server architecture ● Request-response pattern ● Connection oriented
  • 5. Micro XRCE-DDS Main components: ● Micro XRCE-DDS Agent ● Micro XRCE-DDS Client Additional components: ● Generator tool ● Serialization library eProsima Micro XRCE-DDS: First implementation of DDS-XRCE protocol.
  • 6. Micro XRCE-DDS Main components: ● Micro XRCE-DDS Agent ● Micro XRCE-DDS Client Additional components: ● Generator tool ● Serialization library eProsima Micro XRCE-DDS: First implementation of DDS-XRCE protocol.
  • 7. Supported OSes and RTOSes RTOS: Real Time Operating System Main Features: ● Works with an advanced algorithm for scheduling tasks within maximum time limit. ● Apt for Real-Time applications ● POSIX-compliant interface NuttX FreeRTOS Linux Windows Zephyr
  • 8. Client-Agent communication Communication flow: ● Client connects to agent (upon previous knowledge or discovery) ● Session creation (Client proxy instantiation) ● DDS Participant creation ● Other DDS Entities creation
  • 9. micro-ROS: puts ROS 2 onto microcontrollers! The solution for creating ROS 2 nodes into embedded devices Micro XRCE-DDS: the micro-ROS middleware
  • 10. Real-Time OS Additional drivers, … POSIX Micro XRCE-DDS Client ROS Middleware Interface (rmw) + Additional abstractions micro-ROS Agent microcontroller C API rcl C++ API (rclcpp) Convenience functions, deterministic execution, … Application component Application component … rclc: Linux, Mac OS, Windows DDS Implementation [Fast DDS, ..] ROS Middleware Interface (rmw) microprocessor C API rcl C++ API (rclcpp) Application component Application component … Python API (rclpy) Apps ROS Client Library ROS MW Interface Operating Systems Hardware XRCE-DDS DDS Micro XRCE-DDS: the micro-ROS middleware micro-ROS ROS 2
  • 11. Thank you! Francesca Finocchiaro eProsima - Team manager francescafinocchiaro@eprosima.com www.eprosima.com
  • 13. Micro XRCE-DDS Client Micro XRCE-DDS Client: C99 library. Features: ● UDP, TCP, and Serial transport support ● Micro XRCE-DDS as a wire protocol ● Full static memory ● Configurable profiles ● Streams: best effort & reliable ● DDS entities can be created by: XML, reference or binary profiles
  • 14. Micro XRCE-DDS Agent Micro XRCE-DDS Agent: C++11 application & library. Features: ● UDP, TCP, and Serial transport support ● Fast DDS as DDS wire protocol ● Creates Client proxy as DDS actor ● Configurable ● Streams: best effort & reliable