Features Status¶
The features listed below are available in the current ROS 2 release. Unless otherwise specified, the features are available for all supported platforms (Ubuntu 18.04, OS X 10.12.x, Windows 10), DDS implementations (eProsima Fast RTPS, RTI Connext and ADLINK Opensplice) and programming language client libraries (C++ and Python). For planned future development, see the Roadmap.
Functionality |
Link |
Fine print |
|---|---|---|
Discovery, transport and serialization over DDS |
||
Support for multiple DDS implementations, chosen at runtime |
Currently eProsima Fast RTPS, RTI Connext and ADLINK OpenSplice are fully supported. |
|
Common core client library that is wrapped by language-specific libraries |
||
Publish/subscribe over topics |
||
Clients and services |
||
Set/retrieve parameters |
||
ROS 1 - ROS 2 communication bridge |
Available for topics and services, not yet available for actions. |
|
Quality of service settings for handling non-ideal networks |
||
Inter- and intra-process communication using the same API |
Currently only in C++. |
|
Composition of node components at compile-, link- or |
Currently only in C++. |
|
Support for nodes with managed lifecycles |
Currently only in C++. |
|
DDS-Security support |
||
Command-line introspection tools using an extensible framework |
||
Launch system for coordinating multiple nodes |
||
Namespace support for nodes and topics |
||
Static remapping of ROS names |
||
Demos of an all-ROS 2 mobile robot |
||
Preliminary support for real-time code |
Linux only. Not available for Fast RTPS. |
|
Preliminary support for “bare-metal” microcontrollers |
Beside features of the platform the most impact of ROS comes from its available packages. The following are a few high profile packages which are available in the latest release: