
Unitree G1
Bipedal humanoid robot by Unitree Robotics, designed as a compact research, development, and developer platform.
- Research
- Home Assistance

micro-ROS is the official ROS 2 port to microcontrollers in the Cortex-M0/M3/M4/M7/M33 class, ESP32, and RISC-V architectures. The project is developed jointly by eProsima, Bosch Research, FIWARE Foundation, and the Open Robotics community as part of PIPER (Provisioning of Real-Time and Energy-Efficient Robotics). Thanks to micro-ROS, low-power and deterministic MCUs become full-fledged nodes in the ROS 2 graph.
The architecture consists of a Client embedded on the MCU and an Agent running on Linux or another ROS 2 host. Communication goes through Micro XRCE-DDS — eXtremely Resource-Constrained Environments DDS, a lightweight protocol based on OMG's DDS-XRCE. Under the hood it can run over UART, USB, CAN, UDP/IP, IPv6, or 6LoWPAN. The most commonly used RTOSes are FreeRTOS, Zephyr, or NuttX, but the client also runs in bare-metal.
micro-ROS supports most of the rclc API (C-only) including executor, publisher/subscriber, services, and parameters. There is no rclcpp (C++ ROS 2). A typical package occupies 50–100 kB of flash and 10–20 kB of RAM. Used in PX4 Autopilot (since v1.14), OpenCR/OpenCM educational platforms, STM32 mobile robots, and many IoT-robotics projects.
Middleware is a software layer that mediates between applications, services, sensors, drivers, and execution layers. In robotics, middleware is typically responsible for inter-process communication, message passing, hardware abstraction, and module integration within a single system. The most widely used robotics middleware is ROS (Robot Operating System), which provides a publish-subscribe message bus, service calls, and a rich ecosystem of packages.
A Transport Layer is the software layer responsible for data transmission between elements of a robotic or software system — such as processes, nodes, devices, and services. It handles serialisation, routing, reliability, and latency guarantees for messages. In robotics examples include DDS (Data Distribution Service) used by ROS 2, LCM (Lightweight Communications and Marshalling), ZeroMQ, and proprietary message buses on embedded platforms.
A Runtime is the environment or execution layer used to run code, load libraries, manage dependencies, and operate applications or services — either in real time or during normal system operation. In robotics this includes real-time operating system (RTOS) runtimes, ROS 2 executor runtimes, containerised execution environments (Docker, podman), and embedded C++ runtimes on microcontrollers.
Firmware is specialised software written directly into a device's non-volatile memory (flash, EEPROM, ROM), responsible for the hardware's core operational logic, communication protocols, and peripheral management. In robotics, firmware runs on microcontrollers, motor drivers, and sensor modules, providing the lowest software layer between the hardware and higher-level operating systems or middleware.
PX4 Autopilot (since v1.14 official uXRCE-DDS bridge), OpenCR (TurtleBot 3), Raspberry Pi Pico community ports, Bosch Sensortec dev kits, countless educational and hobby projects.
1.6k★ github.com/micro-ROS/micro_ros_setup, active Discourse under the micro-ROS category, regular ROSCon talks, PX4 adoption brought the ecosystem hundreds of thousands of installs.

Bipedal humanoid robot by Unitree Robotics, designed as a compact research, development, and developer platform.

Figure 03 is the third-generation humanoid robot from Figure AI, designed for Helix, home environments, and scalable mass production.

Compact, high-dynamics bipedal humanoid by MagicLab. 140 cm, 40 kg, 24–50 DOF, walking speed up to 2.5 m/s. Unveiled on 8 July 2025 with martial arts and acrobatic demos.
A typical client uses 50–100 kB of flash and 10–20 kB of RAM. Requires a micro-ROS agent on a ROS 2 host (Linux).
License family: Permissive
License family: Permissive
ROS 2 Kilted Kaiju, QoS and security improvements.
ROS 2 Jazzy Jalisco, experimental RISC-V.
Iron Irwini support, native ESP32 support.
LTS line for micro-ROS, rclc API stabilization.
ROS 2 Foxy support, FreeRTOS, Zephyr.
First public micro-ROS release for Dashing Diademata.