micro-ROS/micro_ros_setup
Support macros for building micro-ROS-based firmware.
What it solves
It simplifies the process of building and deploying micro-ROS applications on various embedded platforms and microcontrollers. It acts as an entry point for developers—especially those new to microcontrollers—to cross-compile micro-ROS firmware using standard ROS 2 tools without needing to manually configure complex platform-specific build systems.
How it works
The package provides a structured four-step workflow to get micro-ROS running on hardware:
- Creating:
create_firmware_ws.shsets up a firmware folder with the necessary code for a specific RTOS (e.g., FreeRTOS, Zephyr) and platform. - Configuring:
configure_firmware.shallows users to set transport methods (UDP, Serial, etc.) and agent connection details (IP, port). - Building:
build_firmware.shcompiles the firmware into a platform-specific binary. - Flashing:
flash_firmware.shuploads the binary to the target microcontroller.
Additionally, it can be used to build the micro-ROS-Agent, which is required for the microcontroller to communicate with the rest of the ROS 2 network.
Who it’s for
- ROS 2 developers who want to integrate micro-ROS into embedded systems.
- Developers new to microcontrollers who need a streamlined way to cross-compile firmware.
- Engineers working with RTOS-based platforms like FreeRTOS or Zephyr.
Highlights
- Broad Platform Support: Supports a wide range of hardware including ST Nucleo boards, ESP32, Crazyflie 2.1, and Android.
- RTOS Integration: Works with FreeRTOS and Zephyr, and provides links to standalone modules for others like Mbed, NuttX, and Azure RTOS.
- Flexible Transport: Supports various communication methods including UART, USB, WiFi UDP, and custom radio links.
- Agent Setup: Includes tools to create and build the micro-ROS-Agent directly.
Related
- Project
- Project
- Project
- Project
- Project