»puts ROS 2 onto microcontrollers«
Bridging the gap between resource-constrained microcontrollers and larger processors in robotic applications that are based on the Robot Operating Systems.
Microcontrollers are used in almost every robotic product. Typical reasons are:
- Hardware access
- Hard, low-latency real-time
- Power saving
Another important reason is safety, but note that micro-ROS is not developed according to any safety standard.
- Microcontroller-optimized client API supporting all major ROS concepts
- Seamless integration with ROS 2
- Extremely resource-constrained but flexible middleware
- Multi-RTOS support with generic build system
- Permissive license
- Vibrant community and ecosystem
- Long-term maintainability and interoperability
The architecture of the micro-ROS stack follows the ROS 2 architecture. Dark blue components are developed specifically for micro-ROS. Light blue components are taken from the standard ROS 2 stack.
Source code can be found at github.com/micro-ROS. It comes under the permissive license Apache 2.0 just as the standard ROS 2 stack.
The primary repository is micro_ros_setup, which provides command line scripts for creating your first micro-ROS application.
Developed an new feature or found a bug? We answer both pull requests and tickets.
Read about the latest developments in our blog or attend the next ROS 2 Embedded Working Group Meeting, which take place online on a monthly basis. The meeting link can be found in the ROS 2 Events calendar.
We are looking forward to answer your questions on concepts and development! You have the choice: