![]() |
micro_ros_platformio package from micro_ros_platformio repomicro_ros_platformio |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 2.0.0 |
License | Apache License 2.0 |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Description | micro-ROS library for Platform.IO |
Checkout URI | https://github.com/micro-ros/micro_ros_platformio.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-06-11 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Pablo Garrido
Authors
micro-ROS for PlatformIO
This is a micro-ROS library for bare metal projects based on platformIO.
The build process for ROS 2 and micro-ROS is based on custom meta-build system tools and CMake. PlatformIO will handle the full build process, including dependencies, compilation and linkage.
- micro-ROS for PlatformIO
Supported boards
Supported boards are:
Board | Platform | Framework | Transports | Default meta file |
---|---|---|---|---|
portenta_h7_m7 |
ststm32 |
arduino |
serial wifi
|
colcon.meta |
teensy41 |
teensy |
arduino |
serial native_ethernet
|
colcon.meta |
teensy40 |
teensy |
arduino |
serial |
colcon.meta |
teensy36 teensy35 teensy31
|
teensy |
arduino |
serial |
colcon_lowmem.meta |
due |
atmelsam |
arduino |
serial |
colcon_verylowmem.meta |
zero |
atmelsam |
arduino |
serial |
colcon_verylowmem.meta |
olimex_e407 |
ststm32 |
arduino |
serial |
colcon.meta |
esp32dev |
espressif32 |
arduino |
serial wifi ethernet * |
colcon.meta |
nanorp2040connect |
raspberrypi |
arduino |
serial wifi_nina
|
colcon_verylowmem.meta |
pico |
raspberrypi |
arduino |
serial |
colcon.meta |
* Community contributed
The community is encouraged to open pull request with custom use cases.
Requirements
- PlatformIO local installation or PlatformIO IDE for VSCode
- PlatformIO Core version 6.1.0 or greater
- PlatformIO needs
git
,cmake
andpip3
to handle micro-ROS internal dependencies:
apt install -y git cmake python3-pip
Platform specific requirements
MacOS
XCode command line tools are distributed with toolchain that is not fully compatible with micro-ROS build process. To fix this, install GNU binutils using Homebrew:
brew install binutils
How to add to your project
The library can be included as a regular git library dependence on your platform.ini
file:
...
lib_deps =
https://github.com/micro-ROS/micro_ros_platformio
Now to proceed with the PlatformIO workflow:
pio lib install # Install dependencies
pio run # Build the firmware
pio run --target upload # Flash the firmware
After the library is compiled for first time the build process will be skipped, to trigger a library build and apply library modifications on your next platformIO build:
pio run --target clean_microros # Clean library
Library configuration
This section details the different configuration parameters available on the project platform.ini
file.
A explanation for adding custom targets is also present
ROS 2 distribution
The target ROS 2 distribution can be configured with the board_microros_distro = <distribution>
, supported values are:
humble
File truncated at 100 lines see the full file
Changelog for package micro_ros_platformio
2.0.0 (2023-06-12)
- Iron release (#102)
- Update rolling sources (#99)
- Set rmw default implementation (#62)
- Add rosidl_core (#54)
- Fix Arduino with POSIX (#48)
- Fix generation of idedata (#44)
- micro_ros_platformio works on Raspberry Pi Pico (#39)
- Fix native ethernet (#37)
- Fix user meta path (#34)
- Fix project environment modifications (#36)
- Fix wifi transport setup (#29)
1.0.0 (2022-05-25)
- Add humble as default ROS2 distro (#27)
- Allow custom transports (#21)
- Make clean_microros target be listed in IDE (#23)
- Add libmicroros directory to gitignore (#22)
- Add clean to source ROS2 (#25)
- Update banner (#19)
- Add foxy (#18)
- Add rolling (#17)
- Add examples (#16)
- Add clean step and build error checks (#15)
- Initial readme changes (#3)
- Fix transport selection (#11)
- Extra packages implementation (#12)
- Fix SCons interface (#10)
- Fix __attribute_ (#9)
- Fix Portenta H7 (#8)
- Fix RP2040 WiFi (#7)
- Add configurable Arduino Serial (#6)
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Services
Plugins
Recent questions tagged micro_ros_platformio at Robotics Stack Exchange
![]() |
micro_ros_platformio package from micro_ros_platformio repomicro_ros_platformio |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 2.0.0 |
License | Apache License 2.0 |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Description | micro-ROS library for Platform.IO |
Checkout URI | https://github.com/micro-ros/micro_ros_platformio.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-06-11 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Pablo Garrido
Authors
micro-ROS for PlatformIO
This is a micro-ROS library for bare metal projects based on platformIO.
The build process for ROS 2 and micro-ROS is based on custom meta-build system tools and CMake. PlatformIO will handle the full build process, including dependencies, compilation and linkage.
- micro-ROS for PlatformIO
Supported boards
Supported boards are:
Board | Platform | Framework | Transports | Default meta file |
---|---|---|---|---|
portenta_h7_m7 |
ststm32 |
arduino |
serial wifi
|
colcon.meta |
teensy41 |
teensy |
arduino |
serial native_ethernet
|
colcon.meta |
teensy40 |
teensy |
arduino |
serial |
colcon.meta |
teensy36 teensy35 teensy31
|
teensy |
arduino |
serial |
colcon_lowmem.meta |
due |
atmelsam |
arduino |
serial |
colcon_verylowmem.meta |
zero |
atmelsam |
arduino |
serial |
colcon_verylowmem.meta |
olimex_e407 |
ststm32 |
arduino |
serial |
colcon.meta |
esp32dev |
espressif32 |
arduino |
serial wifi ethernet * |
colcon.meta |
nanorp2040connect |
raspberrypi |
arduino |
serial wifi_nina
|
colcon_verylowmem.meta |
pico |
raspberrypi |
arduino |
serial |
colcon.meta |
* Community contributed
The community is encouraged to open pull request with custom use cases.
Requirements
- PlatformIO local installation or PlatformIO IDE for VSCode
- PlatformIO Core version 6.1.0 or greater
- PlatformIO needs
git
,cmake
andpip3
to handle micro-ROS internal dependencies:
apt install -y git cmake python3-pip
Platform specific requirements
MacOS
XCode command line tools are distributed with toolchain that is not fully compatible with micro-ROS build process. To fix this, install GNU binutils using Homebrew:
brew install binutils
How to add to your project
The library can be included as a regular git library dependence on your platform.ini
file:
...
lib_deps =
https://github.com/micro-ROS/micro_ros_platformio
Now to proceed with the PlatformIO workflow:
pio lib install # Install dependencies
pio run # Build the firmware
pio run --target upload # Flash the firmware
After the library is compiled for first time the build process will be skipped, to trigger a library build and apply library modifications on your next platformIO build:
pio run --target clean_microros # Clean library
Library configuration
This section details the different configuration parameters available on the project platform.ini
file.
A explanation for adding custom targets is also present
ROS 2 distribution
The target ROS 2 distribution can be configured with the board_microros_distro = <distribution>
, supported values are:
humble
File truncated at 100 lines see the full file
Changelog for package micro_ros_platformio
2.0.0 (2023-06-12)
- Iron release (#102)
- Update rolling sources (#99)
- Set rmw default implementation (#62)
- Add rosidl_core (#54)
- Fix Arduino with POSIX (#48)
- Fix generation of idedata (#44)
- micro_ros_platformio works on Raspberry Pi Pico (#39)
- Fix native ethernet (#37)
- Fix user meta path (#34)
- Fix project environment modifications (#36)
- Fix wifi transport setup (#29)
1.0.0 (2022-05-25)
- Add humble as default ROS2 distro (#27)
- Allow custom transports (#21)
- Make clean_microros target be listed in IDE (#23)
- Add libmicroros directory to gitignore (#22)
- Add clean to source ROS2 (#25)
- Update banner (#19)
- Add foxy (#18)
- Add rolling (#17)
- Add examples (#16)
- Add clean step and build error checks (#15)
- Initial readme changes (#3)
- Fix transport selection (#11)
- Extra packages implementation (#12)
- Fix SCons interface (#10)
- Fix __attribute_ (#9)
- Fix Portenta H7 (#8)
- Fix RP2040 WiFi (#7)
- Add configurable Arduino Serial (#6)
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Services
Plugins
Recent questions tagged micro_ros_platformio at Robotics Stack Exchange
![]() |
micro_ros_platformio package from micro_ros_platformio repomicro_ros_platformio |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 2.0.0 |
License | Apache License 2.0 |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Description | micro-ROS library for Platform.IO |
Checkout URI | https://github.com/micro-ros/micro_ros_platformio.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-06-11 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Pablo Garrido
Authors
micro-ROS for PlatformIO
This is a micro-ROS library for bare metal projects based on platformIO.
The build process for ROS 2 and micro-ROS is based on custom meta-build system tools and CMake. PlatformIO will handle the full build process, including dependencies, compilation and linkage.
- micro-ROS for PlatformIO
Supported boards
Supported boards are:
Board | Platform | Framework | Transports | Default meta file |
---|---|---|---|---|
portenta_h7_m7 |
ststm32 |
arduino |
serial wifi
|
colcon.meta |
teensy41 |
teensy |
arduino |
serial native_ethernet
|
colcon.meta |
teensy40 |
teensy |
arduino |
serial |
colcon.meta |
teensy36 teensy35 teensy31
|
teensy |
arduino |
serial |
colcon_lowmem.meta |
due |
atmelsam |
arduino |
serial |
colcon_verylowmem.meta |
zero |
atmelsam |
arduino |
serial |
colcon_verylowmem.meta |
olimex_e407 |
ststm32 |
arduino |
serial |
colcon.meta |
esp32dev |
espressif32 |
arduino |
serial wifi ethernet * |
colcon.meta |
nanorp2040connect |
raspberrypi |
arduino |
serial wifi_nina
|
colcon_verylowmem.meta |
pico |
raspberrypi |
arduino |
serial |
colcon.meta |
* Community contributed
The community is encouraged to open pull request with custom use cases.
Requirements
- PlatformIO local installation or PlatformIO IDE for VSCode
- PlatformIO Core version 6.1.0 or greater
- PlatformIO needs
git
,cmake
andpip3
to handle micro-ROS internal dependencies:
apt install -y git cmake python3-pip
Platform specific requirements
MacOS
XCode command line tools are distributed with toolchain that is not fully compatible with micro-ROS build process. To fix this, install GNU binutils using Homebrew:
brew install binutils
How to add to your project
The library can be included as a regular git library dependence on your platform.ini
file:
...
lib_deps =
https://github.com/micro-ROS/micro_ros_platformio
Now to proceed with the PlatformIO workflow:
pio lib install # Install dependencies
pio run # Build the firmware
pio run --target upload # Flash the firmware
After the library is compiled for first time the build process will be skipped, to trigger a library build and apply library modifications on your next platformIO build:
pio run --target clean_microros # Clean library
Library configuration
This section details the different configuration parameters available on the project platform.ini
file.
A explanation for adding custom targets is also present
ROS 2 distribution
The target ROS 2 distribution can be configured with the board_microros_distro = <distribution>
, supported values are:
humble
File truncated at 100 lines see the full file
Changelog for package micro_ros_platformio
2.0.0 (2023-06-12)
- Iron release (#102)
- Update rolling sources (#99)
- Set rmw default implementation (#62)
- Add rosidl_core (#54)
- Fix Arduino with POSIX (#48)
- Fix generation of idedata (#44)
- micro_ros_platformio works on Raspberry Pi Pico (#39)
- Fix native ethernet (#37)
- Fix user meta path (#34)
- Fix project environment modifications (#36)
- Fix wifi transport setup (#29)
1.0.0 (2022-05-25)
- Add humble as default ROS2 distro (#27)
- Allow custom transports (#21)
- Make clean_microros target be listed in IDE (#23)
- Add libmicroros directory to gitignore (#22)
- Add clean to source ROS2 (#25)
- Update banner (#19)
- Add foxy (#18)
- Add rolling (#17)
- Add examples (#16)
- Add clean step and build error checks (#15)
- Initial readme changes (#3)
- Fix transport selection (#11)
- Extra packages implementation (#12)
- Fix SCons interface (#10)
- Fix __attribute_ (#9)
- Fix Portenta H7 (#8)
- Fix RP2040 WiFi (#7)
- Add configurable Arduino Serial (#6)
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Services
Plugins
Recent questions tagged micro_ros_platformio at Robotics Stack Exchange
![]() |
micro_ros_platformio package from micro_ros_platformio repomicro_ros_platformio |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 2.0.0 |
License | Apache License 2.0 |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Description | micro-ROS library for Platform.IO |
Checkout URI | https://github.com/micro-ros/micro_ros_platformio.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-06-11 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Pablo Garrido
Authors
micro-ROS for PlatformIO
This is a micro-ROS library for bare metal projects based on platformIO.
The build process for ROS 2 and micro-ROS is based on custom meta-build system tools and CMake. PlatformIO will handle the full build process, including dependencies, compilation and linkage.
- micro-ROS for PlatformIO
Supported boards
Supported boards are:
Board | Platform | Framework | Transports | Default meta file |
---|---|---|---|---|
portenta_h7_m7 |
ststm32 |
arduino |
serial wifi
|
colcon.meta |
teensy41 |
teensy |
arduino |
serial native_ethernet
|
colcon.meta |
teensy40 |
teensy |
arduino |
serial |
colcon.meta |
teensy36 teensy35 teensy31
|
teensy |
arduino |
serial |
colcon_lowmem.meta |
due |
atmelsam |
arduino |
serial |
colcon_verylowmem.meta |
zero |
atmelsam |
arduino |
serial |
colcon_verylowmem.meta |
olimex_e407 |
ststm32 |
arduino |
serial |
colcon.meta |
esp32dev |
espressif32 |
arduino |
serial wifi ethernet * |
colcon.meta |
nanorp2040connect |
raspberrypi |
arduino |
serial wifi_nina
|
colcon_verylowmem.meta |
pico |
raspberrypi |
arduino |
serial |
colcon.meta |
* Community contributed
The community is encouraged to open pull request with custom use cases.
Requirements
- PlatformIO local installation or PlatformIO IDE for VSCode
- PlatformIO Core version 6.1.0 or greater
- PlatformIO needs
git
,cmake
andpip3
to handle micro-ROS internal dependencies:
apt install -y git cmake python3-pip
Platform specific requirements
MacOS
XCode command line tools are distributed with toolchain that is not fully compatible with micro-ROS build process. To fix this, install GNU binutils using Homebrew:
brew install binutils
How to add to your project
The library can be included as a regular git library dependence on your platform.ini
file:
...
lib_deps =
https://github.com/micro-ROS/micro_ros_platformio
Now to proceed with the PlatformIO workflow:
pio lib install # Install dependencies
pio run # Build the firmware
pio run --target upload # Flash the firmware
After the library is compiled for first time the build process will be skipped, to trigger a library build and apply library modifications on your next platformIO build:
pio run --target clean_microros # Clean library
Library configuration
This section details the different configuration parameters available on the project platform.ini
file.
A explanation for adding custom targets is also present
ROS 2 distribution
The target ROS 2 distribution can be configured with the board_microros_distro = <distribution>
, supported values are:
humble
File truncated at 100 lines see the full file
Changelog for package micro_ros_platformio
2.0.0 (2023-06-12)
- Iron release (#102)
- Update rolling sources (#99)
- Set rmw default implementation (#62)
- Add rosidl_core (#54)
- Fix Arduino with POSIX (#48)
- Fix generation of idedata (#44)
- micro_ros_platformio works on Raspberry Pi Pico (#39)
- Fix native ethernet (#37)
- Fix user meta path (#34)
- Fix project environment modifications (#36)
- Fix wifi transport setup (#29)
1.0.0 (2022-05-25)
- Add humble as default ROS2 distro (#27)
- Allow custom transports (#21)
- Make clean_microros target be listed in IDE (#23)
- Add libmicroros directory to gitignore (#22)
- Add clean to source ROS2 (#25)
- Update banner (#19)
- Add foxy (#18)
- Add rolling (#17)
- Add examples (#16)
- Add clean step and build error checks (#15)
- Initial readme changes (#3)
- Fix transport selection (#11)
- Extra packages implementation (#12)
- Fix SCons interface (#10)
- Fix __attribute_ (#9)
- Fix Portenta H7 (#8)
- Fix RP2040 WiFi (#7)
- Add configurable Arduino Serial (#6)
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Services
Plugins
Recent questions tagged micro_ros_platformio at Robotics Stack Exchange
![]() |
micro_ros_platformio package from micro_ros_platformio repomicro_ros_platformio |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 2.0.0 |
License | Apache License 2.0 |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Description | micro-ROS library for Platform.IO |
Checkout URI | https://github.com/micro-ros/micro_ros_platformio.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-06-11 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Pablo Garrido
Authors
micro-ROS for PlatformIO
This is a micro-ROS library for bare metal projects based on platformIO.
The build process for ROS 2 and micro-ROS is based on custom meta-build system tools and CMake. PlatformIO will handle the full build process, including dependencies, compilation and linkage.
- micro-ROS for PlatformIO
Supported boards
Supported boards are:
Board | Platform | Framework | Transports | Default meta file |
---|---|---|---|---|
portenta_h7_m7 |
ststm32 |
arduino |
serial wifi
|
colcon.meta |
teensy41 |
teensy |
arduino |
serial native_ethernet
|
colcon.meta |
teensy40 |
teensy |
arduino |
serial |
colcon.meta |
teensy36 teensy35 teensy31
|
teensy |
arduino |
serial |
colcon_lowmem.meta |
due |
atmelsam |
arduino |
serial |
colcon_verylowmem.meta |
zero |
atmelsam |
arduino |
serial |
colcon_verylowmem.meta |
olimex_e407 |
ststm32 |
arduino |
serial |
colcon.meta |
esp32dev |
espressif32 |
arduino |
serial wifi ethernet * |
colcon.meta |
nanorp2040connect |
raspberrypi |
arduino |
serial wifi_nina
|
colcon_verylowmem.meta |
pico |
raspberrypi |
arduino |
serial |
colcon.meta |
* Community contributed
The community is encouraged to open pull request with custom use cases.
Requirements
- PlatformIO local installation or PlatformIO IDE for VSCode
- PlatformIO Core version 6.1.0 or greater
- PlatformIO needs
git
,cmake
andpip3
to handle micro-ROS internal dependencies:
apt install -y git cmake python3-pip
Platform specific requirements
MacOS
XCode command line tools are distributed with toolchain that is not fully compatible with micro-ROS build process. To fix this, install GNU binutils using Homebrew:
brew install binutils
How to add to your project
The library can be included as a regular git library dependence on your platform.ini
file:
...
lib_deps =
https://github.com/micro-ROS/micro_ros_platformio
Now to proceed with the PlatformIO workflow:
pio lib install # Install dependencies
pio run # Build the firmware
pio run --target upload # Flash the firmware
After the library is compiled for first time the build process will be skipped, to trigger a library build and apply library modifications on your next platformIO build:
pio run --target clean_microros # Clean library
Library configuration
This section details the different configuration parameters available on the project platform.ini
file.
A explanation for adding custom targets is also present
ROS 2 distribution
The target ROS 2 distribution can be configured with the board_microros_distro = <distribution>
, supported values are:
humble
File truncated at 100 lines see the full file
Changelog for package micro_ros_platformio
2.0.0 (2023-06-12)
- Iron release (#102)
- Update rolling sources (#99)
- Set rmw default implementation (#62)
- Add rosidl_core (#54)
- Fix Arduino with POSIX (#48)
- Fix generation of idedata (#44)
- micro_ros_platformio works on Raspberry Pi Pico (#39)
- Fix native ethernet (#37)
- Fix user meta path (#34)
- Fix project environment modifications (#36)
- Fix wifi transport setup (#29)
1.0.0 (2022-05-25)
- Add humble as default ROS2 distro (#27)
- Allow custom transports (#21)
- Make clean_microros target be listed in IDE (#23)
- Add libmicroros directory to gitignore (#22)
- Add clean to source ROS2 (#25)
- Update banner (#19)
- Add foxy (#18)
- Add rolling (#17)
- Add examples (#16)
- Add clean step and build error checks (#15)
- Initial readme changes (#3)
- Fix transport selection (#11)
- Extra packages implementation (#12)
- Fix SCons interface (#10)
- Fix __attribute_ (#9)
- Fix Portenta H7 (#8)
- Fix RP2040 WiFi (#7)
- Add configurable Arduino Serial (#6)
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Services
Plugins
Recent questions tagged micro_ros_platformio at Robotics Stack Exchange
![]() |
micro_ros_platformio package from micro_ros_platformio repomicro_ros_platformio |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 2.0.0 |
License | Apache License 2.0 |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Description | micro-ROS library for Platform.IO |
Checkout URI | https://github.com/micro-ros/micro_ros_platformio.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-06-11 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Pablo Garrido
Authors
micro-ROS for PlatformIO
This is a micro-ROS library for bare metal projects based on platformIO.
The build process for ROS 2 and micro-ROS is based on custom meta-build system tools and CMake. PlatformIO will handle the full build process, including dependencies, compilation and linkage.
- micro-ROS for PlatformIO
Supported boards
Supported boards are:
Board | Platform | Framework | Transports | Default meta file |
---|---|---|---|---|
portenta_h7_m7 |
ststm32 |
arduino |
serial wifi
|
colcon.meta |
teensy41 |
teensy |
arduino |
serial native_ethernet
|
colcon.meta |
teensy40 |
teensy |
arduino |
serial |
colcon.meta |
teensy36 teensy35 teensy31
|
teensy |
arduino |
serial |
colcon_lowmem.meta |
due |
atmelsam |
arduino |
serial |
colcon_verylowmem.meta |
zero |
atmelsam |
arduino |
serial |
colcon_verylowmem.meta |
olimex_e407 |
ststm32 |
arduino |
serial |
colcon.meta |
esp32dev |
espressif32 |
arduino |
serial wifi ethernet * |
colcon.meta |
nanorp2040connect |
raspberrypi |
arduino |
serial wifi_nina
|
colcon_verylowmem.meta |
pico |
raspberrypi |
arduino |
serial |
colcon.meta |
* Community contributed
The community is encouraged to open pull request with custom use cases.
Requirements
- PlatformIO local installation or PlatformIO IDE for VSCode
- PlatformIO Core version 6.1.0 or greater
- PlatformIO needs
git
,cmake
andpip3
to handle micro-ROS internal dependencies:
apt install -y git cmake python3-pip
Platform specific requirements
MacOS
XCode command line tools are distributed with toolchain that is not fully compatible with micro-ROS build process. To fix this, install GNU binutils using Homebrew:
brew install binutils
How to add to your project
The library can be included as a regular git library dependence on your platform.ini
file:
...
lib_deps =
https://github.com/micro-ROS/micro_ros_platformio
Now to proceed with the PlatformIO workflow:
pio lib install # Install dependencies
pio run # Build the firmware
pio run --target upload # Flash the firmware
After the library is compiled for first time the build process will be skipped, to trigger a library build and apply library modifications on your next platformIO build:
pio run --target clean_microros # Clean library
Library configuration
This section details the different configuration parameters available on the project platform.ini
file.
A explanation for adding custom targets is also present
ROS 2 distribution
The target ROS 2 distribution can be configured with the board_microros_distro = <distribution>
, supported values are:
humble
File truncated at 100 lines see the full file
Changelog for package micro_ros_platformio
2.0.0 (2023-06-12)
- Iron release (#102)
- Update rolling sources (#99)
- Set rmw default implementation (#62)
- Add rosidl_core (#54)
- Fix Arduino with POSIX (#48)
- Fix generation of idedata (#44)
- micro_ros_platformio works on Raspberry Pi Pico (#39)
- Fix native ethernet (#37)
- Fix user meta path (#34)
- Fix project environment modifications (#36)
- Fix wifi transport setup (#29)
1.0.0 (2022-05-25)
- Add humble as default ROS2 distro (#27)
- Allow custom transports (#21)
- Make clean_microros target be listed in IDE (#23)
- Add libmicroros directory to gitignore (#22)
- Add clean to source ROS2 (#25)
- Update banner (#19)
- Add foxy (#18)
- Add rolling (#17)
- Add examples (#16)
- Add clean step and build error checks (#15)
- Initial readme changes (#3)
- Fix transport selection (#11)
- Extra packages implementation (#12)
- Fix SCons interface (#10)
- Fix __attribute_ (#9)
- Fix Portenta H7 (#8)
- Fix RP2040 WiFi (#7)
- Add configurable Arduino Serial (#6)
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Services
Plugins
Recent questions tagged micro_ros_platformio at Robotics Stack Exchange
![]() |
micro_ros_platformio package from micro_ros_platformio repomicro_ros_platformio |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 2.0.0 |
License | Apache License 2.0 |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Description | micro-ROS library for Platform.IO |
Checkout URI | https://github.com/micro-ros/micro_ros_platformio.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-06-11 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Pablo Garrido
Authors
micro-ROS for PlatformIO
This is a micro-ROS library for bare metal projects based on platformIO.
The build process for ROS 2 and micro-ROS is based on custom meta-build system tools and CMake. PlatformIO will handle the full build process, including dependencies, compilation and linkage.
- micro-ROS for PlatformIO
Supported boards
Supported boards are:
Board | Platform | Framework | Transports | Default meta file |
---|---|---|---|---|
portenta_h7_m7 |
ststm32 |
arduino |
serial wifi
|
colcon.meta |
teensy41 |
teensy |
arduino |
serial native_ethernet
|
colcon.meta |
teensy40 |
teensy |
arduino |
serial |
colcon.meta |
teensy36 teensy35 teensy31
|
teensy |
arduino |
serial |
colcon_lowmem.meta |
due |
atmelsam |
arduino |
serial |
colcon_verylowmem.meta |
zero |
atmelsam |
arduino |
serial |
colcon_verylowmem.meta |
olimex_e407 |
ststm32 |
arduino |
serial |
colcon.meta |
esp32dev |
espressif32 |
arduino |
serial wifi ethernet * |
colcon.meta |
nanorp2040connect |
raspberrypi |
arduino |
serial wifi_nina
|
colcon_verylowmem.meta |
pico |
raspberrypi |
arduino |
serial |
colcon.meta |
* Community contributed
The community is encouraged to open pull request with custom use cases.
Requirements
- PlatformIO local installation or PlatformIO IDE for VSCode
- PlatformIO Core version 6.1.0 or greater
- PlatformIO needs
git
,cmake
andpip3
to handle micro-ROS internal dependencies:
apt install -y git cmake python3-pip
Platform specific requirements
MacOS
XCode command line tools are distributed with toolchain that is not fully compatible with micro-ROS build process. To fix this, install GNU binutils using Homebrew:
brew install binutils
How to add to your project
The library can be included as a regular git library dependence on your platform.ini
file:
...
lib_deps =
https://github.com/micro-ROS/micro_ros_platformio
Now to proceed with the PlatformIO workflow:
pio lib install # Install dependencies
pio run # Build the firmware
pio run --target upload # Flash the firmware
After the library is compiled for first time the build process will be skipped, to trigger a library build and apply library modifications on your next platformIO build:
pio run --target clean_microros # Clean library
Library configuration
This section details the different configuration parameters available on the project platform.ini
file.
A explanation for adding custom targets is also present
ROS 2 distribution
The target ROS 2 distribution can be configured with the board_microros_distro = <distribution>
, supported values are:
humble
File truncated at 100 lines see the full file
Changelog for package micro_ros_platformio
2.0.0 (2023-06-12)
- Iron release (#102)
- Update rolling sources (#99)
- Set rmw default implementation (#62)
- Add rosidl_core (#54)
- Fix Arduino with POSIX (#48)
- Fix generation of idedata (#44)
- micro_ros_platformio works on Raspberry Pi Pico (#39)
- Fix native ethernet (#37)
- Fix user meta path (#34)
- Fix project environment modifications (#36)
- Fix wifi transport setup (#29)
1.0.0 (2022-05-25)
- Add humble as default ROS2 distro (#27)
- Allow custom transports (#21)
- Make clean_microros target be listed in IDE (#23)
- Add libmicroros directory to gitignore (#22)
- Add clean to source ROS2 (#25)
- Update banner (#19)
- Add foxy (#18)
- Add rolling (#17)
- Add examples (#16)
- Add clean step and build error checks (#15)
- Initial readme changes (#3)
- Fix transport selection (#11)
- Extra packages implementation (#12)
- Fix SCons interface (#10)
- Fix __attribute_ (#9)
- Fix Portenta H7 (#8)
- Fix RP2040 WiFi (#7)
- Add configurable Arduino Serial (#6)
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Services
Plugins
Recent questions tagged micro_ros_platformio at Robotics Stack Exchange
![]() |
micro_ros_platformio package from micro_ros_platformio repomicro_ros_platformio |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 2.0.0 |
License | Apache License 2.0 |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Description | micro-ROS library for Platform.IO |
Checkout URI | https://github.com/micro-ros/micro_ros_platformio.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-06-11 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Pablo Garrido
Authors
micro-ROS for PlatformIO
This is a micro-ROS library for bare metal projects based on platformIO.
The build process for ROS 2 and micro-ROS is based on custom meta-build system tools and CMake. PlatformIO will handle the full build process, including dependencies, compilation and linkage.
- micro-ROS for PlatformIO
Supported boards
Supported boards are:
Board | Platform | Framework | Transports | Default meta file |
---|---|---|---|---|
portenta_h7_m7 |
ststm32 |
arduino |
serial wifi
|
colcon.meta |
teensy41 |
teensy |
arduino |
serial native_ethernet
|
colcon.meta |
teensy40 |
teensy |
arduino |
serial |
colcon.meta |
teensy36 teensy35 teensy31
|
teensy |
arduino |
serial |
colcon_lowmem.meta |
due |
atmelsam |
arduino |
serial |
colcon_verylowmem.meta |
zero |
atmelsam |
arduino |
serial |
colcon_verylowmem.meta |
olimex_e407 |
ststm32 |
arduino |
serial |
colcon.meta |
esp32dev |
espressif32 |
arduino |
serial wifi ethernet * |
colcon.meta |
nanorp2040connect |
raspberrypi |
arduino |
serial wifi_nina
|
colcon_verylowmem.meta |
pico |
raspberrypi |
arduino |
serial |
colcon.meta |
* Community contributed
The community is encouraged to open pull request with custom use cases.
Requirements
- PlatformIO local installation or PlatformIO IDE for VSCode
- PlatformIO Core version 6.1.0 or greater
- PlatformIO needs
git
,cmake
andpip3
to handle micro-ROS internal dependencies:
apt install -y git cmake python3-pip
Platform specific requirements
MacOS
XCode command line tools are distributed with toolchain that is not fully compatible with micro-ROS build process. To fix this, install GNU binutils using Homebrew:
brew install binutils
How to add to your project
The library can be included as a regular git library dependence on your platform.ini
file:
...
lib_deps =
https://github.com/micro-ROS/micro_ros_platformio
Now to proceed with the PlatformIO workflow:
pio lib install # Install dependencies
pio run # Build the firmware
pio run --target upload # Flash the firmware
After the library is compiled for first time the build process will be skipped, to trigger a library build and apply library modifications on your next platformIO build:
pio run --target clean_microros # Clean library
Library configuration
This section details the different configuration parameters available on the project platform.ini
file.
A explanation for adding custom targets is also present
ROS 2 distribution
The target ROS 2 distribution can be configured with the board_microros_distro = <distribution>
, supported values are:
humble
File truncated at 100 lines see the full file
Changelog for package micro_ros_platformio
2.0.0 (2023-06-12)
- Iron release (#102)
- Update rolling sources (#99)
- Set rmw default implementation (#62)
- Add rosidl_core (#54)
- Fix Arduino with POSIX (#48)
- Fix generation of idedata (#44)
- micro_ros_platformio works on Raspberry Pi Pico (#39)
- Fix native ethernet (#37)
- Fix user meta path (#34)
- Fix project environment modifications (#36)
- Fix wifi transport setup (#29)
1.0.0 (2022-05-25)
- Add humble as default ROS2 distro (#27)
- Allow custom transports (#21)
- Make clean_microros target be listed in IDE (#23)
- Add libmicroros directory to gitignore (#22)
- Add clean to source ROS2 (#25)
- Update banner (#19)
- Add foxy (#18)
- Add rolling (#17)
- Add examples (#16)
- Add clean step and build error checks (#15)
- Initial readme changes (#3)
- Fix transport selection (#11)
- Extra packages implementation (#12)
- Fix SCons interface (#10)
- Fix __attribute_ (#9)
- Fix Portenta H7 (#8)
- Fix RP2040 WiFi (#7)
- Add configurable Arduino Serial (#6)
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Services
Plugins
Recent questions tagged micro_ros_platformio at Robotics Stack Exchange
![]() |
micro_ros_platformio package from micro_ros_platformio repomicro_ros_platformio |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 2.0.0 |
License | Apache License 2.0 |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Description | micro-ROS library for Platform.IO |
Checkout URI | https://github.com/micro-ros/micro_ros_platformio.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-06-11 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Pablo Garrido
Authors
micro-ROS for PlatformIO
This is a micro-ROS library for bare metal projects based on platformIO.
The build process for ROS 2 and micro-ROS is based on custom meta-build system tools and CMake. PlatformIO will handle the full build process, including dependencies, compilation and linkage.
- micro-ROS for PlatformIO
Supported boards
Supported boards are:
Board | Platform | Framework | Transports | Default meta file |
---|---|---|---|---|
portenta_h7_m7 |
ststm32 |
arduino |
serial wifi
|
colcon.meta |
teensy41 |
teensy |
arduino |
serial native_ethernet
|
colcon.meta |
teensy40 |
teensy |
arduino |
serial |
colcon.meta |
teensy36 teensy35 teensy31
|
teensy |
arduino |
serial |
colcon_lowmem.meta |
due |
atmelsam |
arduino |
serial |
colcon_verylowmem.meta |
zero |
atmelsam |
arduino |
serial |
colcon_verylowmem.meta |
olimex_e407 |
ststm32 |
arduino |
serial |
colcon.meta |
esp32dev |
espressif32 |
arduino |
serial wifi ethernet * |
colcon.meta |
nanorp2040connect |
raspberrypi |
arduino |
serial wifi_nina
|
colcon_verylowmem.meta |
pico |
raspberrypi |
arduino |
serial |
colcon.meta |
* Community contributed
The community is encouraged to open pull request with custom use cases.
Requirements
- PlatformIO local installation or PlatformIO IDE for VSCode
- PlatformIO Core version 6.1.0 or greater
- PlatformIO needs
git
,cmake
andpip3
to handle micro-ROS internal dependencies:
apt install -y git cmake python3-pip
Platform specific requirements
MacOS
XCode command line tools are distributed with toolchain that is not fully compatible with micro-ROS build process. To fix this, install GNU binutils using Homebrew:
brew install binutils
How to add to your project
The library can be included as a regular git library dependence on your platform.ini
file:
...
lib_deps =
https://github.com/micro-ROS/micro_ros_platformio
Now to proceed with the PlatformIO workflow:
pio lib install # Install dependencies
pio run # Build the firmware
pio run --target upload # Flash the firmware
After the library is compiled for first time the build process will be skipped, to trigger a library build and apply library modifications on your next platformIO build:
pio run --target clean_microros # Clean library
Library configuration
This section details the different configuration parameters available on the project platform.ini
file.
A explanation for adding custom targets is also present
ROS 2 distribution
The target ROS 2 distribution can be configured with the board_microros_distro = <distribution>
, supported values are:
humble
File truncated at 100 lines see the full file
Changelog for package micro_ros_platformio
2.0.0 (2023-06-12)
- Iron release (#102)
- Update rolling sources (#99)
- Set rmw default implementation (#62)
- Add rosidl_core (#54)
- Fix Arduino with POSIX (#48)
- Fix generation of idedata (#44)
- micro_ros_platformio works on Raspberry Pi Pico (#39)
- Fix native ethernet (#37)
- Fix user meta path (#34)
- Fix project environment modifications (#36)
- Fix wifi transport setup (#29)
1.0.0 (2022-05-25)
- Add humble as default ROS2 distro (#27)
- Allow custom transports (#21)
- Make clean_microros target be listed in IDE (#23)
- Add libmicroros directory to gitignore (#22)
- Add clean to source ROS2 (#25)
- Update banner (#19)
- Add foxy (#18)
- Add rolling (#17)
- Add examples (#16)
- Add clean step and build error checks (#15)
- Initial readme changes (#3)
- Fix transport selection (#11)
- Extra packages implementation (#12)
- Fix SCons interface (#10)
- Fix __attribute_ (#9)
- Fix Portenta H7 (#8)
- Fix RP2040 WiFi (#7)
- Add configurable Arduino Serial (#6)