awesome-ros2
by fkromer
The Robot Operating System Version 2.0 is awesome!
- stars
- 1.7K
- forks
- 293
- watching
- 85
- awesome lists
- 6
- entries
- 312
What's in the list
312 links in 59 sections, with live GitHub stats.activeno commit in 2y
Packages / Data collection
ros2_data_collection
Collect, validate and send data reliably from ROS 2 to create APIs and dashboards
Packages / 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
Packages / 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
Packages / 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
Packages / 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
- ros2-docker
Connecting ROS 2 nodes running in Docker containers over the internet
osrf/docker_images
Dockerfiles of and
docker-ros2-desktop-vnc
Dockerfiles to provide HTML5 VNC interface to access Ubuntu LXDE + ROS2
- ros2-lxd
Install ROS 2 Humble in Ubuntu 20.04 or 18.04 using LXD containers
Packages / Networking
Husarnet VPN
A P2P, secure network layer dedicated for ROS & ROS 2
Packages / Ecosystem
- Link ROS
Cloud Logging for ROS 1 and ROS 2
rosbag2
ROS2 native rosbag
rviz
3D Robot Visualizer
urdfdom
URDF (U-Robot Description Format) library which provides core data structures and a simple XML parser
urdfdom_headers
Headers for URDF parsers
ros2cli
ROS 2 command line tools
orocos_kinematics_dynamics
Orocos Kinematics and Dynamics C++ library
pydds
Simple DDS Python API for Vortex Lite and for OpenSplice
- Webots
Robot simulator for ROS 2
- LGSVL
Simulation software to accelerate safe autonomous vehicle development
Unity Robotics Hub
This is a central repository for tools, tutorials, resources, and documentation for robotic simulation in Unity
Foxglove Studio
Integrated visualization and diagnosis tool for robotics
ROS2 For Unity
An asset package which enables high-performance communication between Unity3D simulations and ROS2 ecosystem
Packages / Interactivity
Jupyter ROS2
Jupyter widget helpers for ROS2
Packages / Penetration testing
aztarna
A footprinting tool for robots
ros2_fuzzer
ROS2 Topic & Service Fuzzer
Packages / Application layer
- Apex.Autonomy
Apex.Autonomy provides autonomy algorithms as individual building blocks and is compatible with Autoware.Auto
- Autoware.Auto
Autoware.Auto provides an open-source software stack based on ROS 2 for self-driving technology
ros2_control
is a proof of concept on how new features within ROS 2 can be elaborated and used in the context of robot control ( )
ros2_controllers
Description of ros_controllers
geometry2
A set of ROS packages for keeping track of coordinate transforms
ros2-ORB_SLAM2
ROS2 node wrapping the ORB_SLAM2 library
basalt_ros2
ROS2 wrapper for Basalt VIO
cartographer
Real-time simultaneous localization and mapping (SLAM) in 2D and 3D across multiple platforms and sensor configurations
slam_gmapping
Slam Gmapping for ROS2
slam_toolbox
Slam Toolbox for lifelong mapping and localization in potentially massive maps with ROS
lidarslam_ros2
ROS2 package of 3D lidar slam using ndt/gicp registration and pose-optimization
li_slam_ros2
ROS2 package of tightly-coupled lidar inertial ndt/gicp slam referenced from LIO-SAM
octomap_server2
ROS2 stack for mapping with OctoMap. Port of the ROS1 package
vision_opencv
Packages for interfacing ROS2 with OpenCV
teleop_twist_keyboard
Generic Keyboard Teleop for ROS2
teleop_twist_joy
Simple joystick teleop for twist robots
diagnostics
Forked version of the original ROS1 Diagnostics for ROS 2 (currently diagnostics_updater only)
robot_state_publisher
Forked version of the original ROS Robot State Publisher with all modifications to compile within a ROS2 Ecosystem
common_interfaces
A set of packages which contain common interface files (.msg and .srv)
ros2_object_map
"Mark tag of objects on map when SLAM"
ros2_object_analytics
Object Analytics (OA) is ROS2 wrapper for realtime object detection, localization and tracking
ros2_intel_movidius_ncs
ROS2 wrapper for Movidius™ Neural Compute Stick (NCS) Neuronal Compute API
ros2_moving_object
Addressing moving objects based on messages generated by Object Analytics
ros2_openvino_toolkit
ROS2 wrapper for CV API of OpenVINO™ (human vision emulation)
ros2_grasp_library
Probably a grasp library :)
apriltag_ros
ROS2 node for AprilTag detection
rosbridge_suite
Bridging your browser to the ROS 2.0
ros2_message_filters
ros2_message_filters blends various messages based on the conditions that filter needs to met and derives from ROS2 porting of ROS message_filters
ros2-tensorflow
ROS2 nodes for computer vision tasks in Tensorflow
ros2_pytorch
ROS2 nodes for computer vision tasks in PyTorch
ros2_pytorch_cuda
Extension of for CUDA devices with containerization
pid
A PID controller for ROS2
system-modes
System modes for ROS 2 and micro-ROS
darknet_ros
ROS2 wrapper for deploying Darknet's YOLO Computer Vision model
easy_perception_deployment
Package that accelerates training and deployment of Computer Vision models for industries
easy_manipulation_deployment
Package that integrates perception elements to establish an end-to-end pick and place task
ros2_pid_library
A ROS2 Humble fully configurable PID library
wayp_plan_tools
Waypoint and planner tools for ROS 2 with minimal dependencies and an optional Gazebo Fortress simulation
Packages / Middleware
Micro XRCE-DDS Agent
Micro XRCE-DDS Agent acts as a server between DDS Network and Micro XRCE-DDS Clients
- Micro XRCE-DDS Agent docker
Docker image containing the Micro XRCE-DDS Agent
Micro XRCE-DDS Client
Micro XRCE-DDS implements a client-server protocol to enable resource-constrained devices (clients) to take part in DDS communications
micro-ROS-Agent
ROS 2 package using Micro XRCE-DDS Agent
Eclipse Zenoh
is a scalable and extremely performant protocol that can be used transparently used to interact with as well as for . ( )
Eclipse Zenoh-Plugin-DDS
This is a plugin that allows to transparently route ROS2/DDS data over zenoh. This is commonly used for over Wireless network or across the Internet. ( )
Packages / "System" bindings
rclandroid
Android API for ROS2
rclnodejs
Node.js version of ROS2.0 client
riot-ros2
This project enables ROS2 to run on microcontrollers using the RIOT Operating System
ROS2-Integration-Service
ROS2 Integration and Routing which provides a complete tool to integrate other technologies with ROS2 easily and enable ROS2 on WAN/Internet
soss
The System Of Systems Synthesizer is used to integrate ROS2 via ROS2-Integration-Service with other (communication) systems
micro_ros_arduino
Integration of micro-ROS into Arduino software platform projects
micro_ros_zephyr_module
Integration of micro-ROS in Zeyphr OS based projects
Packages / Driver layer
- Autoware.IO
Autoware.IO provides a heterogeneous hardware reference platform and enables the integration of member company's solutions onto platforms which support the Autoware.Auto and Autoware.AI software stack
ros2_xmlrpc_interface
ros2 interface package with xmlrpc, to communicate with a Sesto server using Sesto API
cozmo_driver_ros2
Unofficial Anki Cozmo node for ROS2
sphero_ros2
ROS2 sphero driver
flock2
ROS2 driver for DJI Tello drones
ros2_raspicam_node
ROS2 node for Raspberry Pi camera
joystick_drivers
ROS2 drivers for joysticks
joystick_drivers_from_scratch
Joystick driver packages for ROS 2
joystick_ros2
Joystick driver for ROS2, support all platforms: Linux, macOS, Windows
ros2_teleop_keyboard
Teleop Twist Keyboard for ROS2
ros_astra_camera
ROS2 wrapper for Astra camera
ros2_usb_camera
ROS2 General USB camera driver
ros2_android_drivers
Collection of ROS2 drivers for several Android sensors
ros2_intel_realsense
ROS2 Wrapper for Intel® RealSense™ Devices
raspicam2_node
ROS2 node for camera module of Raspberry Pi
ros2_track_imu
ROS2 node for TrackIMU IMU sensor
HRIM
A standard interface for robot modules
FIROS2
ROS2 integrable tool focused in the intercommunication between ROS2 and FIWARE
lino2_upper
Linorobot on ROS2
RysROS2
ROS2 software stack for MiniRys robots
px4_to_ros
ROS2/ROS packages for communicate PX4 with ROS
multiwii_ros2
ROS2 Node for MultiWii and Cleanflight flight controllers
ydlidar_ros2
ROS2 wrapper for ydlidar
zed-ros2-wrapper
ROS 2 wrapper beta for the ZED SDK
ros2_denso_radar
Toyota/Lexus 2015-2017 Denso Radar driver for ROS2
sick_scan2
ROS2 driver for the SICK TiM series of laser scanners (TiM551/TiM561/TiM571)
ros2_ouster_drivers
ROS2 Drivers for the Ouster OS-1 Lidars
- micro-ROS/hardware
Information and documentation about the hardware platforms used and supported in the micro-ROS project
- Blickfeld Cube 1 & Cube Range
ROS2 drivers for Blickfeld Cube 1 & Cube Range
Universal Robots
ROS2 drivers for UR CB3 and e-Series
odrive_ros2_control
ODrive driver for ros2_control
duro_gps_driver
ROS/ROS2 driver for SwiftNav Duro Inertial GPS / GNSS receivers
Packages / Client libraries
rclada
ROS Client Library for Ada
rclcpp
ROS Client Library for C++
rclgo
ROS Client Library for Go
rclpy
ROS Client Library for Python
rcljava
ROS Client Library for Java
rclnodejs
ROS Client Library for Node.js
rclobjc
ROS Client Library for Objective C (for iOS)
rclc
ROS Client Library for C
ros2_rust
Rust bindings for ROS2
ros2_dotnet
.NET bindings for ROS2
ros2cs
an alternative to ros2_dotnet, a ROS2 C# interface supporting full range of messages and modern ROS2
Packages / Client libraries common
rcl
Library to support implementation of language specific ROS Client Libraries
system_tests
Tests for rclcpp and rclpy
rcl_interfaces
A repository for messages and services used by the ROS client libraries
Packages / IDL generators
rosidl_generator_java
Generate the ROS interfaces in Java
rosidl_generator_objc
Generate the ROS interfaces in Objective C
rosidl_generator_cpp
Generate the ROS interfaces in C++
rosidl_generator_c
Generate the ROS interfaces in C
rosidl
Packages which provide the ROS IDL (.msg) definition and code generation
rosidl_dds
Generate the DDS interfaces for ROS interfaces
Packages / RMW (ROS middleware)
rmw
Contains the ROS middleware API
rmw_connext_cpp
Implement the ROS middleware interface using RTI Connext static code generation in C++
rmw_fastrtps_cpp
Implement the ROS middleware interface using eProsima FastRTPS static code generation in C++
rmw_dps
Implementation of the ROS Middleware (rmw) Interface using Intel's Distributed Publish & Subscribe
rmw_opensplice_cpp
Implement the ROS middleware interface using PrismTech OpenSplice static code generation in C++
rmw_coredx
CoreDX DDS integration layer for ROS2
rmw_freertps
RMW implementation using freertps
rmw_zenoh
RMW implementation using Eclipse zenoh: Zero Overhead Pub/sub, Store/Query and Compute
rcutils
Common C functions and data structures used in ROS 2
freertps
a free, portable, minimalist, work-in-progress RTPS implementation
rmw_cyclonedds
ROS2 RMW layer for Eclipse Cyclone DDS
rmw_zenoh
ROS2 RMW layer for
rmw_iceoryx
Enables usage of the inter-process-communication middleware
Packages / DDS communication mechanism implementations
- Connext DDS
Connectivity Software for Developing and Integrating IIoT Systems
Fast-RTPS
Implementation of RTPS Standard (RTPS is the wire interoperability protocol for DDS)
OpenSplice
Implementation of the OMG DDS Standard
- CoreDX DDS
Implementation of Twin Oaks Computing, Inc
freertps
A free, portable, minimalist, work-in-progress RTPS implementation
cdds
Cyclone DDS is developed completely in the open and is undergoing the acceptance process to become part of Eclipse IoT
Micro-XRCE-DDS)
An XRCE DDS implementation (supported by microROS)
Packages / Build system (Linux)
meta-ros2
ROS 2 Layer for OpenEmbedded Linux
Packages / Build system (ROS2)
ci
ROS 2 CI Infrastructure
ament_cmake_export_jars
The ability to export Java archives to downstream packages in the ament buildsystem in CMake
rmw_implementation_cmake
CMake functions which can discover and enumerate available implementations
rmw_implementation
CMake infrastructure and dependencies for rmw implementations
Operating systems
NuttX
NuttX fork of the official one for use with micro-ROS
RIOT
RIOT is a real-time multi-threading operating system (...,) real-time capabilities, small memory footprint, (...) API offers partial POSIX compliance
- eMCOS
POSIX-compliant real-time OS for many-core processors expected to support AUTOSAR in the future
- PYNQ
Python-based rapid prototyping of high performance ML applications running on XILINX FPGAs
ReconROS
Framework for ROS2 FPGA-based hardware acceleration. Based on
- Ubuntu Core
Build secure IoT devices with Ubuntu Core
VxWorks
The Secure, Safe, Reliable, and Certifiable real-time OS for Critical Infrastructure
- Zephyr
Linux Foundation Projects RTOS aiming at beeing secure and safe
Packaging
- ros2-snap
Create a snap for your ROS 2 application
Forks
- Apex.OS
Apex.OS is a fork of ROS 2 that has been made so robust and reliable that it can be used in safety-critical applications
Documentation
- ROS Index
Future single entry point into ROS2 documentation (BETA)
Documentation / ROS Index
Documentation
- ROS 2 Design
Articles which inform and guide the ROS 2.0 design efforts
- ROS 2 Docs (Overview)
Details about ROS 2 internal design and organisation
ROS 2 Tutorials
Study about ROS2 concept, libraries, build, and development with demoes/examples
ROS 2 Wiki
Entry point to find all kind of information about ROS 2
ROS 2 Distribution (rosdistro)
Info about distributions and the included packages
Documentation / ROS2 package status
- Bouncy package status
Status of ROS Bouncy packages
- Ardent package status
Status of ROS2 Ardent packages
Documentation
- ROS2 Buildfarm
Build information (Jenkins build farm)
ROS2 CLI cheats sheet
A cheats sheet for ROS 2 Command Line Interface
ROS2 Quality Assurance Guidelines
A collection of guidelines and tutorials for improving package quality, following REP-2004 quality standards and integrating Continuous Integration
Community
Books
Courses
Courses / ROS2 Autoware Course
Courses
Presentations / ROSCon 2022
- video
Panel: The ROS 2 Developer Experience
- video
Wearable ROS: Development of wearable robot system using ROS 2
- video
Building ROS 2 enabled Android apps with C++
- video
Distributed Robotics Simulator with Unreal Engine
- video
Tools and processes for improving the certifiability of ROS 2
- video
Failover ROS Framework : Consensus-based node redundancy
- video
ROS 2 and Gazebo Integration Best Practices
- video
Chain-Aware ROS Evaluation Tool (CARET)
- video
ROS 2 network monitoring
- video
How custom tasks are defined, assigned, and executed in Open-RMF
- video
A practitioner's guide to ros2_control
- video
Zenoh: How to Make ROS 2 Work at any Scale and Integrate with Anything
- video
A case study in optics manufacturing with MoveIt2 and ros2_control
- video
20/20 Robot Vision - How to setup cameras in ROS 1 & ROS 2 using camera_aravis
- video
Filter your ROS 2 content
- video
Evolving Message Types, and Other Interfaces, Over Time
- video
Migrating from ROS1 to ROS 2 - choosing the right bridge
- video
On Use of Nav2 Smac Planners
- video
Bazel and ROS 2 – building large scale safety applications
- video
Native Rust components for ROS 2
- video
The ROS build farm and you: How ROS packages you release become binary packages
- video
mROS 2: yet another runtime environment onto embedded devices
- video
ROS 2 & Edge Impulse: Embedded AI in robotics applications
- video
micro-ROS goes Automotive: supporting AUTOSAR-based microcontrollers
- video
An open architecture for Hardware Acceleration in ROS 2
- video
ROS 2 and the Crazyflie: Aerial swarms and Autonomy with a tiny flying robot
- video
A Raspberry Pi image with ROS 2 + RT and a customizable image builder
Presentations / ROS-I EU Spring 2019 Workshop
- Slides
Current Status of ROS 2 Hands-on Feature Overview
Presentations / 2019
- Video
Robot Modularity with Xilinx and H-ROS (Xilinx Inc.)
Presentations / ROSCon JP 2018 (english slide presentations only)
- Slides
What's next for ROS? (from slide 24 onwards)
Presentations / Embedded World Conference 2018
- Slides
ADLink Neuron: An industrial oriented ROS2-based platform
Presentations / 2018
- Slides
ROS2 - The Robot Operating System Version 2 (TNG Technology Consulting GmbH)
Presentations / ROS Industrial Conference 2017
Presentations / ROSCon 2017
Presentations / 2017
- slides
HyphaROS ROS 2.0 Introduction
Presentations / ROS Industrial Conference 2016
- Slides
ROS 2.0 AND OPC UA: A STATUS UPDATE
Presentations / ROSCon 2016
Presentations / ROSCon 2015
Papers
- Robot Operating System 2 - The need for a holistic security approach to robotic architectures
Ubuntu 16.04, ROS 2 Beta 2/3, and RTI 5.3 DDS with DDS Security
Podcasts
Services / Cloud robotics
Services / Robotics Capture the Flag (RCTF)
rctf-list
A list of Robotics CTF (RCTF) scenarios
Companies
- Acutronic Robotics
Not existing anymore. Initiators of the Hardware Robot Information Model (HRIM), Hardware Robot Operating System (H-ROS) and creators of the world's first modular industrial robot arm MARA
- ADLINK
"Leading EDGE COMPUTING"
- Alias Robotics
Products and services in the context of robot cybersecurity
- Amazon
Robotics Team of Amazon Amazon Web Services (AWS)
- Apex.AI
"Safe and certified software for autonomous mobility"
- AutonomouStuff
"The world leader in autonomy systems and solutions"
- Bosch
Robotics Team of Bosch Research
- Canonical
The company behind Ubuntu
- Eprosima
"The middleware experts"
- Ericsson Research
Connect ROS2 applications to 5G networks for M2M communication
- FARobot
Swarm Robot System, a ROS 2/DDS based Fleet Management System
- Fraunhofer Institute for Manufacturing Engineering and Automation IPA
Robot and assistive systems
- GESTALT ROBOTICS
Service provider for intelligent automation
- Husarnet
Open Source, P2P, low-latency VPN dedicated for robots
- iRobot
Manufacturer of vacuuming and mopping robots
- MathWorks
ROS Toolbox
- Mission Robotics
Hardware and Software for a new era of Marine Intelligence
- Roboception GmbH
Real-Time Perception for Your Robot
- ROBOOX
OPEN-SOURCE SOFTWARE ECOSYSTEM FOR CONSUMER ROBOTS
- Rover Robotics
Rugged, industrial-grade robots
- synapticon
ROS compatible motion control and drive products with efforts to support ROS2
- Wind River
ROS2 for VxWorks
Organizations
Working Groups / Edge AI Working Group
Working Groups / Embedded Working Group
Working Groups / Hardware Acceleration Working Group
Working Groups / Navigation Working Group
Working Groups / Safety Working Group
Working Groups / Security Working Group
ros-security/community
Outlines the governance of the ROS 2 Security Working Group
Working Groups / Technical Steering Committee
Working Groups / Tooling Working Group
Nothing in this list matches your filter.
Featured in 6 awesome lists
Each link jumps to the spot where the list mentions awesome-ros2.