Awesome Robot Operating System 2 (ROS 2) 
A curated list of awesome Robot Operating System Version 2.0 (ROS 2) resources and libraries.
The Robot Operating System 2 (ROS 2) is a set of software libraries and tools that help you build robot applications. From drivers to state-of-the-art algorithms, and with powerful developer tools, ROS 2 has what you need for your next robotics project. And it’s all open source.
DEPRECATION NOTICE: This repository is in the process of beeing handed over to Open Robotics. Feel free to checkout the GitHub ROS2 organization to find the repo there in the future.
Contents
- Packages
- Forks
- Operating systems
- Packaging
- Documentation
- Community
- Books
- Courses
- Presentations
- Papers
- Podcasts
- Services
- Companies
- Organizations
- Working groups
Packages
Data collection
- ros2_data_collection - Collect, validate and send data reliably from ROS 2 to create APIs and dashboards.
Demonstrations
- adlink_ddsbot - The ROS 2.0/1.0 based robots swarm architecture (opensplice DDS).
- adlink_neuronbot - ROS2/DDS robot pkg for human following and swarm.
- turtlebot3 - ROS2 based TurtleBot3 demo including Bringup, Teleop and Cartographer.
Examples
- turtlebot2_demo - TurtleBot 2 demos using ROS 2.
- examples/rclcpp - C++ examples.
- examples/rclpy - Python examples.
- rcljava_examples - Package containing examples of how to use the rcljava API.
- ros2_talker_android, ros2_listener_android - Example Android apps for the ROS2 Java bindings.
- zed-ros2-examples - Examples and tutorials use the ZED cameras in the ROS2.
- realsense-ros:ros2-branch - ROS2 Wrapper for Intel® RealSense™ Devices
Benchmarking
- ros2_benchmarking - Framework for ROS2 benchmarking. ROS2 communication characteristics can be evaluated on several axes, quickly and in an automated way.
- performance_test - Test performance and latency of various communication means like ROS 2, FastRTPS and Connext DDS Micro.
Containerization
- docker-ros2-ospl-ce - A dockerfile to build a ROS2 + OpenSplice CE container.
- ros2_java_docker - Dockerfiles for building ros2_java with OpenJDK and Android.
- micro-ROS/docker - Docker-related material to setup, configure and develop with micro-ROS hardware.
- ros-tooling/cross_compile - Cross compile ROS and ROS 2 workspaces to non-native architectures and generate corresponding Docker images.