Based on ROS2 libraries (feature comparison) the microROS is constructed. It is made for microcontroller devices with small main memory and processors. Programs written via microROS can be hosted from bare-metal through RTOS (e.g., NuttX, FreeRTOS, VxWorks) to GPOS (e.g., Linux, Windows macOS). Each microbes application “is” embedded in a well managed framework e.g., the execution manager which takes care of application lifecycle and hosts the state management.
The primary concept of microROS is the offloading to ROS2 agents, which do more sophisticated computations.
A nice intro can be found here.