From da838d99ac2bfc213e4c55679296aee1a2d5618a Mon Sep 17 00:00:00 2001 From: Pablo Garrido Date: Mon, 24 May 2021 10:47:11 +0200 Subject: [PATCH 1/5] Initial --- .github/ISSUE_TEMPLATE/general-issue.md | 2 +- _docs/concepts/build_system/external_build_systems/index.md | 4 ++-- _docs/concepts/build_system/index.md | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/general-issue.md b/.github/ISSUE_TEMPLATE/general-issue.md index 3ac587d1..ed09481b 100644 --- a/.github/ISSUE_TEMPLATE/general-issue.md +++ b/.github/ISSUE_TEMPLATE/general-issue.md @@ -12,7 +12,7 @@ assignees: '' - Hardware description: - RTOS: - Installation type: -- Version or commit hash: +- Version or commit hash: #### Steps to reproduce the issue diff --git a/_docs/concepts/build_system/external_build_systems/index.md b/_docs/concepts/build_system/external_build_systems/index.md index 6983faee..e0a4e982 100644 --- a/_docs/concepts/build_system/external_build_systems/index.md +++ b/_docs/concepts/build_system/external_build_systems/index.md @@ -7,7 +7,7 @@ Once you have read about the official [**micro_ros_setup** tool](/docs/concepts/ ## micro-ROS component for ESP-IDF -The [micro-ROS component for ESP-IDF](https://github.com/micro-ROS/micro_ros_espidf_component) allows to integrate micro-ROS as a component in an Espressif ESP-IDF Build System. This component allows the user to integrate the micro-ROS API and utilities in an already created ESP-IDF project just by cloning or copying a folder. +The [micro-ROS component for ESP-IDF](https://github.com/micro-ROS/micro_ros_espidf_component) allows to integrate micro-ROS as a component in an Espressif ESP-IDF Build System. This component allows the user to integrate the micro-ROS API and utilities in an already created ESP-IDF project just by cloning or copying a folder. Configuration of the micro-ROS library is based on the `colcon.meta` file. For more details visit the [Git repository](https://github.com/micro-ROS/micro_ros_espidf_component). @@ -27,4 +27,4 @@ Along with this support package, there are [detailed instructions](https://githu The [micro-ROS for STM32CubeMX](https://github.com/micro-ROS/micro_ros_stm32cubemx_utils) package is a set of utilities which enables the seamless configuration, set-up and integration of micro-ROS into an STM32 controller based project. As such, it allows micro-ROS to be virtually supported by the full set of boards offered by STMicroelectronics. -Its usage is based on Dockers, via a prepared [Dockerfile](https://github.com/micro-ROS/micro_ros_stm32cubemx_utils/blob/foxy/microros_component/Dockerfile) which eases micro-ROS library generation outside of a ROS 2 environment. +Its usage is based on Dockers, via a prepared [Dockerfile](https://github.com/micro-ROS/docker/blob/foxy/micro-ROS-static-library-builder/Dockerfile) which eases micro-ROS library generation outside of a ROS 2 environment. diff --git a/_docs/concepts/build_system/index.md b/_docs/concepts/build_system/index.md index 6b15bb1c..3e770500 100644 --- a/_docs/concepts/build_system/index.md +++ b/_docs/concepts/build_system/index.md @@ -23,7 +23,7 @@ ros2 run micro_ros_setup create_firmware_ws.sh [RTOS] [HARDWARE BOARD] ``` It is possible to obtain a list of the supported hardware by running the command without any argument. By doing so, it is possible to see that along with the RTOSes and hardware supported by micro-ROS this build system also provides with three extra options: -- By using `zephyr` as RTOS and `host` as hardware name, it is possible to obtain a Zephyr RTOS image with your micro-ROS app that runs in your host computer. +- By using `zephyr` as RTOS and `host` as hardware name, it is possible to obtain a Zephyr RTOS image with your micro-ROS app that runs in your host computer. - By using just `host` as RTOS, micro-ROS will build a set of [micro-ROS demo applications](https://github.com/micro-ROS/micro-ROS-demos) natively in your host machine. These applications behave just like micro-ROS apps (using the same abstraction layers and middleware implementation) and allow the user to debug and test the applications on a PC. - By using `generate_lib` as RTOS it is possible to configure the build system for generating static libraries (`.a`) and a set of headers (`include`) that can be linked in any other external tool. This option requires a valid CMake toolchain. @@ -66,4 +66,4 @@ ros2 run micro_ros_agent micro_ros_agent [OPTIONS] **Tip 1:** To learn use of the micro_ros_setup build system hands-on, please see the [core tutorials](https://micro-ros.github.io/docs/tutorials/core/first_application_rtos/). -**Tip 2 :** Remember that the micro-ROS Agent can be also be used with this simple Docker command: `docker run -it --rm -v /dev:/dev --privileged --net=host microros/micro-ros-agent:foxy [OPTIONS]` +**Tip 2 :** Remember that the micro-ROS Agent can be also be used with this simple Docker command: `docker run -it --rm -v /dev:/dev --privileged --net=host microros/micro-ros-agent:$ROS_DISTRO [OPTIONS]` From a705a3fb7b6a8338ece8e7cb5e61374b5d6da0a9 Mon Sep 17 00:00:00 2001 From: Pablo Garrido Date: Fri, 28 May 2021 11:02:18 +0200 Subject: [PATCH 2/5] Update --- .github/workflows/generate_api_reference.yml | 52 +++- _data/docs.yml | 1 + _docs/api/overview/index.md | 1 + _docs/api/utils/index.md | 7 + _docs/overview/docker_ci_status/index.md | 77 ++--- .../utils_doc/Modules/group__stringutils.md | 205 ++++++++++++++ .../utils_doc/Modules/group__typeutils.md | 267 ++++++++++++++++++ _includes/utils_doc/index_groups.md | 11 + 8 files changed, 578 insertions(+), 43 deletions(-) create mode 100644 _docs/api/utils/index.md create mode 100644 _includes/utils_doc/Modules/group__stringutils.md create mode 100644 _includes/utils_doc/Modules/group__typeutils.md create mode 100644 _includes/utils_doc/index_groups.md diff --git a/.github/workflows/generate_api_reference.yml b/.github/workflows/generate_api_reference.yml index 68feaa19..9eef4dfe 100644 --- a/.github/workflows/generate_api_reference.yml +++ b/.github/workflows/generate_api_reference.yml @@ -1,5 +1,5 @@ name: API reference generator -on: +on: workflow_dispatch: inputs: name: @@ -8,7 +8,7 @@ on: - cron: '0 6 * * *' jobs: - generate_api_reference: + generate_rmw_api_reference: runs-on: ubuntu-latest container: ros:foxy steps: @@ -27,8 +27,8 @@ jobs: unzip doxybook2-linux-amd64-v1.3.3.zip -d doxybook2 mkdir -p ros2_ws/src; cd ros2_ws - git clone -b foxy https://github.com/eProsima/Micro-CDR src/Micro-CDR - git clone -b foxy https://github.com/eProsima/Micro-XRCE-DDS-Client src/Micro-XRCE-DDS-Client + git clone -b foxy https://github.com/eProsima/Micro-CDR src/Micro-CDR + git clone -b foxy https://github.com/eProsima/Micro-XRCE-DDS-Client src/Micro-XRCE-DDS-Client git clone -b foxy https://github.com/micro-ROS/rosidl_typesupport_microxrcedds src/rosidl_typesupport_microxrcedds git clone -b foxy https://github.com/micro-ROS/rmw-microxrcedds src/rmw-microxrcedds @@ -40,9 +40,45 @@ jobs: - name: Create Pull Request uses: peter-evans/create-pull-request@v3 with: - commit-message: micro-ROS API reference auto-update ${{ steps.date.outputs.date }} - title: micro-ROS API reference auto-update ${{ steps.date.outputs.date }} - body: This PR is autogenerated and updates the micro-ROS API reference. Close and reopen to trigger CI. - branch: autoupdate_micro_ros_api_reference + commit-message: micro-ROS RMW API reference auto-update ${{ steps.date.outputs.date }} + title: micro-ROS RMW API reference auto-update ${{ steps.date.outputs.date }} + body: This PR is autogenerated and updates the micro-ROS RMW API reference. Close and reopen to trigger CI. + branch: autoupdate_micro_ros_rmw_api_reference + delete-branch: true + base: master + + generate_utils_api_reference: + runs-on: ubuntu-latest + container: ros:foxy + steps: + - uses: actions/checkout@v2 + - name: Get date + id: date + run: echo "::set-output name=date::$(date +'%d-%m-%Y %H:%M')" + - name: Update libraries + shell: bash + run: | + apt update + apt install -y doxygen wget git unzip cmake ros-foxy-osrf-testing-tools-cpp + + pushd / + wget https://github.com/matusnovak/doxybook2/releases/download/v1.3.3/doxybook2-linux-amd64-v1.3.3.zip + unzip doxybook2-linux-amd64-v1.3.3.zip -d doxybook2 + + mkdir -p ros2_ws/src; cd ros2_ws + git clone -b galactic https://github.com/micro-ROS/micro_ros_utilities src/micro_ros_utilities + + source /opt/ros/$ROS_DISTRO/setup.bash + colcon build --packages-up-to micro_ros_utilities --cmake-args -DBUILD_DOCUMENTATION=ON + popd + + /doxybook2/bin/doxybook2 --input /ros2_ws/build/micro_ros_utilities/doc/xml --output _includes/utils_doc -c utils/doxy_config -t utils/doxy_templates + - name: Create Pull Request + uses: peter-evans/create-pull-request@v3 + with: + commit-message: micro-ROS RMW API reference auto-update ${{ steps.date.outputs.date }} + title: micro-ROS RMW API reference auto-update ${{ steps.date.outputs.date }} + body: This PR is autogenerated and updates the micro-ROS RMW API reference. Close and reopen to trigger CI. + branch: autoupdate_micro_ros_rmw_api_reference delete-branch: true base: master \ No newline at end of file diff --git a/_data/docs.yml b/_data/docs.yml index f735986f..2b30176c 100644 --- a/_data/docs.yml +++ b/_data/docs.yml @@ -89,4 +89,5 @@ docs: - api/overview - api/rmw + - api/utils - api/rclc diff --git a/_docs/api/overview/index.md b/_docs/api/overview/index.md index bb6ae483..0cef3462 100644 --- a/_docs/api/overview/index.md +++ b/_docs/api/overview/index.md @@ -6,4 +6,5 @@ redirect_from: --- * [**RMW Micro XRCE-DDS**](../rmw/) +* [**micro-ROS Utils**](../utils/) * [**RCLC**](../rclc/) \ No newline at end of file diff --git a/_docs/api/utils/index.md b/_docs/api/utils/index.md new file mode 100644 index 00000000..d80938dd --- /dev/null +++ b/_docs/api/utils/index.md @@ -0,0 +1,7 @@ +--- +title: micro-ROS Utils +permalink: /docs/api/utils/ +--- + +{% include utils_doc/Modules/group__typeutils.md %} +{% include utils_doc/Modules/group__stringutils.md %} diff --git a/_docs/overview/docker_ci_status/index.md b/_docs/overview/docker_ci_status/index.md index 35f1a286..ba903d49 100644 --- a/_docs/overview/docker_ci_status/index.md +++ b/_docs/overview/docker_ci_status/index.md @@ -12,53 +12,58 @@ permalink: /docs/overview/docker_ci_status/ ## Tooling Status -| Repository | Description | CI | Issues / Pull Requests | Documentation | -| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | -| [micro-ros-setup](https://github.com/micro-ROS/micro_ros_setup) [![](https://img.shields.io/badge/ROS-dashing-brightgreen)](https://github.com/micro-ROS/micro_ros_setup/tree/dashing) [![](https://img.shields.io/badge/ROS-foxy-brightgreen)](https://github.com/micro-ROS/micro_ros_setup/tree/foxy) | Micro-ROS tool to build and flash Micro-ROS to every supported platform | [![GitHub Actions status](https://github.com/micro-ROS/micro_ros_setup/actions/workflows/nightly.yml/badge.svg)](https://github.com/micro-ROS/micro_ros_setup/actions/workflows/nightly.yml) | [![](https://img.shields.io/github/issues/micro-ROS/micro_ros_setup.svg)](https://github.com/micro-ROS/micro_ros_setup/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/micro_ros_setup.svg)](https://github.com/micro-ROS//micro_ros_setup/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/micro_ros_setup/blob/foxy/README.md) | -| [micro-ros-espidf-component](https://github.com/micro-ROS/micro_ros_espidf_component) [![](https://img.shields.io/badge/ROS-foxy-brightgreen)](https://github.com/micro-ROS/micro_ros_espidf_component/tree/foxy) | Component to used Micro-ROS in ESP IDF build system | [![GitHub Actions status](https://github.com/micro-ROS/micro_ros_espidf_component/actions/workflows/nightly.yml/badge.svg)](https://github.com/micro-ROS/micro_ros_espidf_component/actions/workflows/nightly.yml) | [![](https://img.shields.io/github/issues/micro-ROS/micro_ros_espidf_component.svg)](https://github.com/micro-ROS/micro_ros_espidf_component/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/micro_ros_espidf_component.svg)](https://github.com/micro-ROS/micro_ros_espidf_component/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/micro_ros_espidf_component/blob/foxy/README.md) | -| [micro-ros-arduino](https://github.com/micro-ROS/micro_ros_arduino) [![](https://img.shields.io/badge/ROS-foxy-brightgreen)](https://github.com/micro-ROS/micro_ros_arduino/tree/foxy) | Micro-ROS precompiled libraries to directly interface with the Arduino IDE | [![Github Actions status](https://github.com/micro-ROS/micro_ros_arduino/workflows/CI/badge.svg)](https://github.com/micro-ROS/micro_ros_arduino/actions) | [![](https://img.shields.io/github/issues/micro-ROS/micro_ros_arduino.svg)](https://github.com/micro-ROS/micro_ros_arduino/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/micro_ros_arduino.svg)](https://github.com/micro-ROS/micro_ros_arduino/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/micro_ros_arduino/blob/foxy/README.md) | -| [micro-ros-zephyr-module](https://github.com/micro-ROS/micro_ros_zephyr_module) [![](https://img.shields.io/badge/ROS-foxy-brightgreen)](https://github.com/micro-ROS/micro_ros_zephyr_module/tree/foxy) | Integration of micro-ROS within Zephyr West build system | [![Github Actions status](https://github.com/micro-ROS/micro_ros_zephyr_module/actions/workflows/nightly.yml/badge.svg)](https://github.com/micro-ROS/micro_ros_zephyr_module/actions/workflows/nightly.yml) | [![](https://img.shields.io/github/issues/micro-ROS/micro_ros_zephyr_module.svg)](https://github.com/micro-ROS/micro_ros_zephyr_module/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/micro_ros_zephyr_module.svg)](https://github.com/micro-ROS/micro_ros_zephyr_module/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/micro_ros_zephyr_module/blob/foxy/README.md) | -| [micro_ros_raspberrypi_pico_sdk](https://github.com/micro-ROS/micro_ros_raspberrypi_pico_sdk) [![](https://img.shields.io/badge/ROS-foxy-brightgreen)](https://github.com/micro-ROS/micro_ros_raspberrypi_pico_sdk/tree/foxy) | Integration of micro-ROS within Raspberry PI Pico SDK | [![Github Actions status](https://github.com/micro-ROS/micro_ros_raspberrypi_pico_sdk/workflows/CI/badge.svg)](https://github.com/micro-ROS/micro_ros_raspberrypi_pico_sdk/actions) | [![](https://img.shields.io/github/issues/micro-ROS/micro_ros_raspberrypi_pico_sdk.svg)](https://github.com/micro-ROS/micro_ros_raspberrypi_pico_sdk/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/micro_ros_raspberrypi_pico_sdk.svg)](https://github.com/micro-ROS/micro_ros_raspberrypi_pico_sdk/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/micro_ros_raspberrypi_pico_sdk/blob/foxy/README.md) | -| [NuttX fork](https://github.com/micro-ROS/NuttX) | NuttX fork to use with micro-ROS. Current status is **discontinued** | [![](https://img.shields.io/badge/-unavailable-lightgrey)]() | [![](https://img.shields.io/github/issues/micro-ROS/NuttX.svg)](https://github.com/micro-ROS/NuttX/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/NuttX.svg)](https://github.com/micro-ROS/NuttX/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/NuttX/blob/master/README.md) | +| Repository | Description | CI | Issues / Pull Requests | Documentation | +| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | +| [micro-ros-setup](https://github.com/micro-ROS/micro_ros_setup) [![](https://img.shields.io/badge/ROS-galactic-brightgreen)](https://github.com/micro-ROS/micro_ros_setup/tree/galactic) [![](https://img.shields.io/badge/ROS-foxy-brightgreen)](https://github.com/micro-ROS/micro_ros_setup/tree/foxy) | Micro-ROS tool to build and flash Micro-ROS to every supported platform | [![GitHub Actions status](https://github.com/micro-ROS/micro_ros_setup/actions/workflows/nightly.yml/badge.svg)](https://github.com/micro-ROS/micro_ros_setup/actions/workflows/nightly.yml) | [![](https://img.shields.io/github/issues/micro-ROS/micro_ros_setup.svg)](https://github.com/micro-ROS/micro_ros_setup/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/micro_ros_setup.svg)](https://github.com/micro-ROS//micro_ros_setup/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/micro_ros_setup/blob/galactic/README.md) | +| [micro-ros-espidf-component](https://github.com/micro-ROS/micro_ros_espidf_component) [![](https://img.shields.io/badge/ROS-galactic-brightgreen)](https://github.com/micro-ROS/micro_ros_espidf_component/tree/galactic) [![](https://img.shields.io/badge/ROS-foxy-brightgreen)](https://github.com/micro-ROS/micro_ros_espidf_component/tree/foxy) | Component to used Micro-ROS in ESP IDF build system | [![GitHub Actions status](https://github.com/micro-ROS/micro_ros_espidf_component/actions/workflows/nightly.yml/badge.svg)](https://github.com/micro-ROS/micro_ros_espidf_component/actions/workflows/nightly.yml) | [![](https://img.shields.io/github/issues/micro-ROS/micro_ros_espidf_component.svg)](https://github.com/micro-ROS/micro_ros_espidf_component/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/micro_ros_espidf_component.svg)](https://github.com/micro-ROS/micro_ros_espidf_component/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/micro_ros_espidf_component/blob/galactic/README.md) | +| [micro-ros-arduino](https://github.com/micro-ROS/micro_ros_arduino) [![](https://img.shields.io/badge/ROS-galactic-brightgreen)](https://github.com/micro-ROS/micro_ros_arduino/tree/galactic) [![](https://img.shields.io/badge/ROS-foxy-brightgreen)](https://github.com/micro-ROS/micro_ros_arduino/tree/foxy) | Micro-ROS precompiled libraries to directly interface with the Arduino IDE | [![Github Actions status](https://github.com/micro-ROS/micro_ros_arduino/workflows/CI/badge.svg)](https://github.com/micro-ROS/micro_ros_arduino/actions) | [![](https://img.shields.io/github/issues/micro-ROS/micro_ros_arduino.svg)](https://github.com/micro-ROS/micro_ros_arduino/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/micro_ros_arduino.svg)](https://github.com/micro-ROS/micro_ros_arduino/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/micro_ros_arduino/blob/galactic/README.md) | +| [micro-ros-zephyr-module](https://github.com/micro-ROS/micro_ros_zephyr_module) [![](https://img.shields.io/badge/ROS-galactic-brightgreen)](https://github.com/micro-ROS/micro_ros_zephyr_module/tree/galactic) [![](https://img.shields.io/badge/ROS-foxy-brightgreen)](https://github.com/micro-ROS/micro_ros_zephyr_module/tree/foxy) | Integration of micro-ROS within Zephyr West build system | [![Github Actions status](https://github.com/micro-ROS/micro_ros_zephyr_module/actions/workflows/nightly.yml/badge.svg)](https://github.com/micro-ROS/micro_ros_zephyr_module/actions/workflows/nightly.yml) | [![](https://img.shields.io/github/issues/micro-ROS/micro_ros_zephyr_module.svg)](https://github.com/micro-ROS/micro_ros_zephyr_module/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/micro_ros_zephyr_module.svg)](https://github.com/micro-ROS/micro_ros_zephyr_module/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/micro_ros_zephyr_module/blob/galactic/README.md) | +| [micro_ros_raspberrypi_pico_sdk](https://github.com/micro-ROS/micro_ros_raspberrypi_pico_sdk) [![](https://img.shields.io/badge/ROS-galactic-brightgreen)](https://github.com/micro-ROS/micro_ros_raspberrypi_pico_sdk/tree/galactic) [![](https://img.shields.io/badge/ROS-foxy-brightgreen)](https://github.com/micro-ROS/micro_ros_raspberrypi_pico_sdk/tree/foxy) | Integration of micro-ROS within Raspberry PI Pico SDK | [![Github Actions status](https://github.com/micro-ROS/micro_ros_raspberrypi_pico_sdk/workflows/CI/badge.svg)](https://github.com/micro-ROS/micro_ros_raspberrypi_pico_sdk/actions) | [![](https://img.shields.io/github/issues/micro-ROS/micro_ros_raspberrypi_pico_sdk.svg)](https://github.com/micro-ROS/micro_ros_raspberrypi_pico_sdk/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/micro_ros_raspberrypi_pico_sdk.svg)](https://github.com/micro-ROS/micro_ros_raspberrypi_pico_sdk/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/micro_ros_raspberrypi_pico_sdk/blob/galactic/README.md) | +| [micro_ros_mbed](https://github.com/micro-ROS/micro_ros_mbed) [![](https://img.shields.io/badge/ROS-galactic-brightgreen)](https://github.com/micro-ROS/micro_ros_mbed/tree/galactic) | Integration of micro-ROS within Mbed RTOS | [![Github Actions status](https://github.com/micro-ROS/micro_ros_mbed/workflows/CI/badge.svg)](https://github.com/micro-ROS/micro_ros_mbed/actions) | [![](https://img.shields.io/github/issues/micro-ROS/micro_ros_mbed.svg)](https://github.com/micro-ROS/micro_ros_mbed/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/micro_ros_mbed.svg)](https://github.com/micro-ROS/micro_ros_mbed/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/micro_ros_mbed/blob/galactic/README.md) | +| [micro_ros_nuttx_app](https://github.com/micro-ROS/micro_ros_nuttx_app) [![](https://img.shields.io/badge/ROS-galactic-brightgreen)](https://github.com/micro-ROS/micro_ros_nuttx_app/tree/galactic) | Integration of micro-ROS within Nuttx 10 | [![Github Actions status](https://github.com/micro-ROS/micro_ros_nuttx_app/workflows/CI/badge.svg)](https://github.com/micro-ROS/micro_ros_nuttx_app/actions) | [![](https://img.shields.io/github/issues/micro-ROS/micro_ros_nuttx_app.svg)](https://github.com/micro-ROS/micro_ros_nuttx_app/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/micro_ros_nuttx_app.svg)](https://github.com/micro-ROS/micro_ros_nuttx_app/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/micro_ros_nuttx_app/blob/galactic/README.md) | +| [micro_ros_stm32cubemx_utils](https://github.com/micro-ROS/micro_ros_stm32cubemx_utils) [![](https://img.shields.io/badge/ROS-galactic-brightgreen)](https://github.com/micro-ROS/micro_ros_stm32cubemx_utils/tree/galactic) | Integration of micro-ROS within STM32CubeMX and STM32CubeIDE | [![](https://img.shields.io/badge/-unavailable-lightgrey)]() | [![](https://img.shields.io/github/issues/micro-ROS/micro_ros_stm32cubemx_utils.svg)](https://github.com/micro-ROS/micro_ros_stm32cubemx_utils/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/micro_ros_stm32cubemx_utils.svg)](https://github.com/micro-ROS/micro_ros_stm32cubemx_utils/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/micro_ros_stm32cubemx_utils/blob/galactic/README.md) | +| [NuttX fork](https://github.com/micro-ROS/NuttX) | NuttX fork to use with micro-ROS. Current status is **discontinued** | [![](https://img.shields.io/badge/-unavailable-lightgrey)]() | [![](https://img.shields.io/github/issues/micro-ROS/NuttX.svg)](https://github.com/micro-ROS/NuttX/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/NuttX.svg)](https://github.com/micro-ROS/NuttX/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/NuttX/blob/master/README.md) | ## Source Code Repositories Status Most repositories can be found in GitHub's micro-ROS organization at [github.com/micro-ROS/](https://github.com/micro-ROS/). -| Repository | Description | CI | Issues / Pull Requests | Documentation | -| :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | :------------------------------------------------------------------------------------------------------------------------------------------- | -| [Micro XRCE-DDS Client](https://github.com/eProsima/Micro-XRCE-DDS-Client) [![](https://img.shields.io/badge/ROS-dashing-brightgreen)](https://github.com/eProsima/Micro-XRCE-DDS-Client/tree/dashing) [![](https://img.shields.io/badge/ROS-foxy-brightgreen)](https://github.com/eProsima/Micro-XRCE-DDS-Client/tree/foxy) | Client C99 library of eProsima's open-source implementation of DDS-XRCE | [![Build status](https://img.shields.io/jenkins/build?jobUrl=http%3A%2F%2Fjenkins.eprosima.com%3A8080%2Fview%2FMicro%2520XRCE%2Fjob%2FMicro-XRCE-DDS-Client%2520Github%2F)](http://jenkins.eprosima.com:8080/view/Micro%20XRCE/job/Micro-XRCE-DDS-Client%20Github/) | [![](https://img.shields.io/github/issues/eProsima/Micro-XRCE-DDS-Client.svg)](https://github.com/eProsima/Micro-XRCE-DDS-Client/issues) [![](https://img.shields.io/github/issues-pr/eProsima/Micro-XRCE-DDS-Client.svg)](https://github.com/eProsima/Micro-XRCE-DDS-Client/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://micro-xrce-dds.docs.eprosima.com/en/latest/client.html) | -| [Micro XRCE-DDS Agent](https://github.com/eProsima/Micro-XRCE-DDS-Agent) [![](https://img.shields.io/badge/ROS-dashing-brightgreen)](https://github.com/eProsima/Micro-XRCE-DDS-Agent/tree/dashing) [![](https://img.shields.io/badge/ROS-foxy-brightgreen)](https://github.com/eProsima/Micro-XRCE-DDS-Agent/tree/foxy) | Agent (bridge to DDS) C++11 library of eProsima's open-source implementation of DDS-XRCE | [![Build status](https://img.shields.io/jenkins/build?jobUrl=http%3A%2F%2Fjenkins.eprosima.com%3A8080%2Fview%2FMicro%2520XRCE%2Fjob%2FMicro-XRCE-DDS-Agent%2520Github%2F)](http://jenkins.eprosima.com:8080/view/Micro%20XRCE/job/Micro-XRCE-DDS-Agent%20Github/) | [![](https://img.shields.io/github/issues/eProsima/Micro-XRCE-DDS-Agent.svg)](https://github.com/eProsima/Micro-XRCE-DDS-Agent/issues) [![](https://img.shields.io/github/issues-pr/eProsima/Micro-XRCE-DDS-Agent.svg)](https://github.com/eProsima/Micro-XRCE-DDS-Agent/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://micro-xrce-dds.docs.eprosima.com/en/latest/agent.html) | -| [rmw-microxrcedds](https://github.com/micro-ROS/rmw-microxrcedds) [![](https://img.shields.io/badge/ROS-dashing-brightgreen)](https://github.com/micro-ROS/rmw-microxrcedds/tree/dashing) [![](https://img.shields.io/badge/ROS-foxy-brightgreen)](https://github.com/micro-ROS/rmw-microxrcedds/tree/foxy) | ROS 2 RMW adapter for Micro-XRCE-DDS Client library | [![Build status](https://img.shields.io/github/workflow/status/micro-ROS/rmw-microxrcedds/CI%20RMW_MicroXRCEDDS)](https://github.com/micro-ROS/rmw-microxrcedds/actions?query=workflow%3A%22CI+RMW_MicroXRCEDDS%22) | [![](https://img.shields.io/github/issues/micro-ROS/rmw-microxrcedds.svg)](https://github.com/micro-ROS/rmw-microxrcedds/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/rmw-microxrcedds.svg)](https://github.com/micro-ROS/rmw-microxrcedds/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/rmw-microxrcedds/blob/foxy/README.md) | -| [rosidl-typesupport-microxrcedds](https://github.com/micro-ROS/rosidl_typesupport_microxrcedds) [![](https://img.shields.io/badge/ROS-dashing-brightgreen)](https://github.com/micro-ROS/rosidl_typesupport_microxrcedds/tree/dashing) [![](https://img.shields.io/badge/ROS-foxy-brightgreen)](https://github.com/micro-ROS/rosidl_typesupport_microxrcedds/tree/foxy) | ROS 2 type support for Micro-XRCE-DDS Client library | [![Build status](https://img.shields.io/github/workflow/status/micro-ROS/rosidl_typesupport_microxrcedds/CI%20TypeSupport_MicroXRCEDDS)](https://github.com/micro-ROS/rosidl_typesupport_microxrcedds/actions?query=workflow%3A%22CI+TypeSupport_MicroXRCEDDS%22) | [![](https://img.shields.io/github/issues/micro-ROS/rosidl_typesupport_microxrcedds.svg)](https://github.com/micro-ROS/rosidl_typesupport_microxrcedds/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/rosidl_typesupport_microxrcedds.svg)](https://github.com/micro-ROS/rosidl_typesupport_microxrcedds/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/rosidl_typesupport_microxrcedds/blob/master/README.md) | -| [micro-ROS-Agent](https://github.com/micro-ROS/micro-ROS-Agent) [![](https://img.shields.io/badge/ROS-dashing-brightgreen)](https://github.com/micro-ROS/micro-ROS-Agent/tree/dashing) [![](https://img.shields.io/badge/ROS-foxy-brightgreen)](https://github.com/micro-ROS/micro-ROS-Agent/tree/foxy) | Agent (bridge) to ROS 2 | [![](https://img.shields.io/github/workflow/status/micro-ROS/micro-ROS-Agent/CI%20micro-ROS%20Agent)](https://github.com/micro-ROS/micro-ROS-Agent/actions?query=workflow%3A%22CI+micro-ROS+Agent%22) | [![](https://img.shields.io/github/issues/micro-ROS/micro-ROS-Agent.svg)](https://github.com/micro-ROS/micro-ROS-Agent/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/micro-ROS-Agent.svg)](https://github.com/micro-ROS/micro-ROS-Agent/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/micro-ROS-Agent/blob/master/README.md) | -| [micro-ros-msgs](https://github.com/micro-ROS/micro_ros_msgs) [![](https://img.shields.io/badge/ROS-foxy-brightgreen)](https://github.com/micro-ROS/micro_ros_msgs/tree/foxy) | Specific ROS 2 messages used within micro-ROS architecture | [![](https://img.shields.io/badge/-unavailable-lightgrey)]() | [![](https://img.shields.io/github/issues/micro-ROS/micro_ros_msgs.svg)](https://github.com/micro-ROS/micro_ros_msgs/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/micro_ros_msgs.svg)](https://github.com/micro-ROS/micro_ros_msgs/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/micro_ros_msgs/blob/main/README.md) | -| [system_modes](https://github.com/micro-ROS/system_modes) [![](https://img.shields.io/badge/ROS-dashing-brightgreen)](https://github.com/micro-ROS/system_modes/releases) [![](https://img.shields.io/badge/ROS-eloquent-brightgreen)](https://github.com/micro-ROS/system_modes/releases) | Extension for `rclcpp` | [![Build Status](https://img.shields.io/github/workflow/status/micro-ROS/system_modes/Test%20system%20modes)](https://github.com/micro-ROS/system_modes/actions?query=workflow%3A%22Test+system+modes%22) | [![](https://img.shields.io/github/issues/micro-ROS/system_modes.svg)](https://github.com/micro-ROS/system_modes/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/system_modes.svg)](https://github.com/micro-ROS/system_modes/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/system_modes/blob/master/README.md) | -| [rclc](https://github.com/ros2/rclc) [![](https://img.shields.io/badge/ROS-dashing-brightgreen)](https://github.com/ros2/rclc/tree/dashing) [![](https://img.shields.io/badge/ROS-eloquent-brightgreen)](https://github.com/ros2/rclc/tree/master) [![](https://img.shields.io/badge/ROS-foxy-brightgreen)](https://github.com/ros2/rclc/tree/master) | Set of convenience functions and additional concepts, such as executor, to extend the capabilities of ROS 2 `rcl` in C | [![Build Status](https://img.shields.io/github/workflow/status/ros2/rclc/CI%20RCLC)](https://github.com/ros2/rclc/actions?query=workflow%3A%22CI+RCLC%22) | [![](https://img.shields.io/github/issues/ros2/rclc.svg)](https://github.com/ros2/rclc/issues) [![](https://img.shields.io/github/issues-pr/ros2/rclc.svg)](https://github.com/ros2/rclc/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/ros2/rclc/blob/master/README.md) | +| Repository | Description | CI | Issues / Pull Requests | Documentation | +| :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | :------------------------------------------------------------------------------------------------------------------------------------------- | +| [Micro XRCE-DDS Client](https://github.com/eProsima/Micro-XRCE-DDS-Client) [![](https://img.shields.io/badge/ROS-galactic-brightgreen)](https://github.com/eProsima/Micro-XRCE-DDS-Client/tree/foxy) [![](https://img.shields.io/badge/ROS-foxy-brightgreen)](https://github.com/eProsima/Micro-XRCE-DDS-Client/tree/foxy) | Client C99 library of eProsima's open-source implementation of DDS-XRCE | [![Build status](https://img.shields.io/jenkins/build?jobUrl=http%3A%2F%2Fjenkins.eprosima.com%3A8080%2Fview%2FMicro%2520XRCE%2Fjob%2FMicro-XRCE-DDS-Client%2520Github%2F)](http://jenkins.eprosima.com:8080/view/Micro%20XRCE/job/Micro-XRCE-DDS-Client%20Github/) | [![](https://img.shields.io/github/issues/eProsima/Micro-XRCE-DDS-Client.svg)](https://github.com/eProsima/Micro-XRCE-DDS-Client/issues) [![](https://img.shields.io/github/issues-pr/eProsima/Micro-XRCE-DDS-Client.svg)](https://github.com/eProsima/Micro-XRCE-DDS-Client/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://micro-xrce-dds.docs.eprosima.com/en/latest/client.html) | +| [Micro XRCE-DDS Agent](https://github.com/eProsima/Micro-XRCE-DDS-Agent) [![](https://img.shields.io/badge/ROS-galactic-brightgreen)](https://github.com/eProsima/Micro-XRCE-DDS-Agent/tree/foxy) [![](https://img.shields.io/badge/ROS-foxy-brightgreen)](https://github.com/eProsima/Micro-XRCE-DDS-Agent/tree/foxy) | Agent (bridge to DDS) C++11 library of eProsima's open-source implementation of DDS-XRCE | [![Build status](https://img.shields.io/jenkins/build?jobUrl=http%3A%2F%2Fjenkins.eprosima.com%3A8080%2Fview%2FMicro%2520XRCE%2Fjob%2FMicro-XRCE-DDS-Agent%2520Github%2F)](http://jenkins.eprosima.com:8080/view/Micro%20XRCE/job/Micro-XRCE-DDS-Agent%20Github/) | [![](https://img.shields.io/github/issues/eProsima/Micro-XRCE-DDS-Agent.svg)](https://github.com/eProsima/Micro-XRCE-DDS-Agent/issues) [![](https://img.shields.io/github/issues-pr/eProsima/Micro-XRCE-DDS-Agent.svg)](https://github.com/eProsima/Micro-XRCE-DDS-Agent/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://micro-xrce-dds.docs.eprosima.com/en/latest/agent.html) | +| [rmw-microxrcedds](https://github.com/micro-ROS/rmw-microxrcedds) [![](https://img.shields.io/badge/ROS-galactic-brightgreen)](https://github.com/micro-ROS/rmw-microxrcedds/tree/galactic) [![](https://img.shields.io/badge/ROS-foxy-brightgreen)](https://github.com/micro-ROS/rmw-microxrcedds/tree/foxy) | ROS 2 RMW adapter for Micro-XRCE-DDS Client library | [![Build status](https://img.shields.io/github/workflow/status/micro-ROS/rmw-microxrcedds/CI%20RMW_MicroXRCEDDS)](https://github.com/micro-ROS/rmw-microxrcedds/actions?query=workflow%3A%22CI+RMW_MicroXRCEDDS%22) | [![](https://img.shields.io/github/issues/micro-ROS/rmw-microxrcedds.svg)](https://github.com/micro-ROS/rmw-microxrcedds/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/rmw-microxrcedds.svg)](https://github.com/micro-ROS/rmw-microxrcedds/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/rmw-microxrcedds/blob/foxy/README.md) | +| [rosidl-typesupport-microxrcedds](https://github.com/micro-ROS/rosidl_typesupport_microxrcedds) [![](https://img.shields.io/badge/ROS-galactic-brightgreen)](https://github.com/micro-ROS/rosidl_typesupport_microxrcedds/tree/galactic) [![](https://img.shields.io/badge/ROS-foxy-brightgreen)](https://github.com/micro-ROS/rosidl_typesupport_microxrcedds/tree/foxy) | ROS 2 type support for Micro-XRCE-DDS Client library | [![Build status](https://img.shields.io/github/workflow/status/micro-ROS/rosidl_typesupport_microxrcedds/CI%20TypeSupport_MicroXRCEDDS)](https://github.com/micro-ROS/rosidl_typesupport_microxrcedds/actions?query=workflow%3A%22CI+TypeSupport_MicroXRCEDDS%22) | [![](https://img.shields.io/github/issues/micro-ROS/rosidl_typesupport_microxrcedds.svg)](https://github.com/micro-ROS/rosidl_typesupport_microxrcedds/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/rosidl_typesupport_microxrcedds.svg)](https://github.com/micro-ROS/rosidl_typesupport_microxrcedds/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/rosidl_typesupport_microxrcedds/blob/master/README.md) | +| [micro-ROS-Agent](https://github.com/micro-ROS/micro-ROS-Agent) [![](https://img.shields.io/badge/ROS-galactic-brightgreen)](https://github.com/micro-ROS/micro-ROS-Agent/tree/galactic) [![](https://img.shields.io/badge/ROS-foxy-brightgreen)](https://github.com/micro-ROS/micro-ROS-Agent/tree/foxy) | Agent (bridge) to ROS 2 | [![](https://img.shields.io/github/workflow/status/micro-ROS/micro-ROS-Agent/CI%20micro-ROS%20Agent)](https://github.com/micro-ROS/micro-ROS-Agent/actions?query=workflow%3A%22CI+micro-ROS+Agent%22) | [![](https://img.shields.io/github/issues/micro-ROS/micro-ROS-Agent.svg)](https://github.com/micro-ROS/micro-ROS-Agent/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/micro-ROS-Agent.svg)](https://github.com/micro-ROS/micro-ROS-Agent/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/micro-ROS-Agent/blob/master/README.md) | +| [micro-ros-msgs](https://github.com/micro-ROS/micro_ros_msgs) [![](https://img.shields.io/badge/ROS-galactic-brightgreen)](https://github.com/micro-ROS/micro_ros_msgs/tree/galactic) [![](https://img.shields.io/badge/ROS-foxy-brightgreen)](https://github.com/micro-ROS/micro_ros_msgs/tree/foxy) | Specific ROS 2 messages used within micro-ROS architecture | [![](https://img.shields.io/badge/-unavailable-lightgrey)]() | [![](https://img.shields.io/github/issues/micro-ROS/micro_ros_msgs.svg)](https://github.com/micro-ROS/micro_ros_msgs/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/micro_ros_msgs.svg)](https://github.com/micro-ROS/micro_ros_msgs/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/micro_ros_msgs/blob/main/README.md) | +| [micro_ros_utilities](https://github.com/micro-ROS/micro_ros_utilities) [![](https://img.shields.io/badge/ROS-galactic-brightgreen)](https://github.com/micro-ROS/micro_ros_utilities/tree/foxy) | micro-ROS utilities for embedded applications | [![Build status](https://github.com/micro-ROS/micro_ros_utilities/actions/workflows/ci.yml/badge.svg)](https://github.com/micro-ROS/micro_ros_utilities/actions/workflows/ci.yml) | [![](https://img.shields.io/github/issues/micro-ROS/micro_ros_utilities.svg)](https://github.com/micro-ROS/micro_ros_utilities/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/micro_ros_utilities.svg)](https://github.com/micro-ROS/micro_ros_utilities/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/micro_ros_utilities/blob/main/README.md) | +| [system_modes](https://github.com/micro-ROS/system_modes) [![](https://img.shields.io/badge/ROS-galactic-brightgreen)](https://github.com/micro-ROS/system_modes/releases) [![](https://img.shields.io/badge/ROS-eloquent-brightgreen)](https://github.com/micro-ROS/system_modes/releases) | Extension for `rclcpp` | [![Build Status](https://img.shields.io/github/workflow/status/micro-ROS/system_modes/Test%20system%20modes)](https://github.com/micro-ROS/system_modes/actions?query=workflow%3A%22Test+system+modes%22) | [![](https://img.shields.io/github/issues/micro-ROS/system_modes.svg)](https://github.com/micro-ROS/system_modes/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/system_modes.svg)](https://github.com/micro-ROS/system_modes/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/system_modes/blob/master/README.md) | +| [rclc](https://github.com/ros2/rclc) [![](https://img.shields.io/badge/ROS-dashing-brightgreen)](https://github.com/ros2/rclc/tree/dashing) [![](https://img.shields.io/badge/ROS-eloquent-brightgreen)](https://github.com/ros2/rclc/tree/master) [![](https://img.shields.io/badge/ROS-foxy-brightgreen)](https://github.com/ros2/rclc/tree/master) [![](https://img.shields.io/badge/ROS-galactic-brightgreen)](https://github.com/ros2/rclc/tree/galactic) | Set of convenience functions and additional concepts, such as executor, to extend the capabilities of ROS 2 `rcl` in C | [![Build Status](https://img.shields.io/github/workflow/status/ros2/rclc/CI%20RCLC)](https://github.com/ros2/rclc/actions?query=workflow%3A%22CI+RCLC%22) | [![](https://img.shields.io/github/issues/ros2/rclc.svg)](https://github.com/ros2/rclc/issues) [![](https://img.shields.io/github/issues-pr/ros2/rclc.svg)](https://github.com/ros2/rclc/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/ros2/rclc/blob/master/README.md) | + ## Example Application Repositories Status -| Name | Description | CI | Issues / Pull Requests | Documentation | -| :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------ | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :---------------------------------------------------------------------------------------------------------------------------------- | -| [micro-ROS-demos](https://github.com/micro-ROS/micro-ROS-demos) [![](https://img.shields.io/badge/ROS-dashing-brightgreen)](https://github.com/micro-ROS/micro-ROS-demos/tree/dashing) [![](https://img.shields.io/badge/ROS-foxy-brightgreen)](https://github.com/micro-ROS/micro-ROS-demos/tree/foxy) | Collection of generic demos, using publishers, subscribers, custom messages, services and graph introspection | [![Build status](https://img.shields.io/github/workflow/status/micro-ROS/micro-ROS-demos/CI)](https://github.com/micro-ROS/micro-ROS-demos/actions?query=workflow%3ACI) | [![](https://img.shields.io/github/issues/micro-ROS/micro-ROS-demos.svg)](https://github.com/micro-ROS/micro-ROS-demos/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/micro-ROS-demos.svg)](https://github.com/micro-ROS/micro-ROS-demos/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/micro-ROS-demos/blob/foxy/README.md) | -| [freertos_apps](https://github.com/micro-ROS/freertos_apps) [![](https://img.shields.io/badge/ROS-dashing-brightgreen)](https://github.com/micro-ROS/freertos_apps/tree/dashing) [![](https://img.shields.io/badge/ROS-foxy-brightgreen)](https://github.com/micro-ROS/freertos_apps/tree/foxy) | Demo applications for FreeRTOS | [![](https://img.shields.io/badge/-unavailable-lightgrey)]() | [![](https://img.shields.io/github/issues/micro-ROS/freertos_apps.svg)](https://github.com/micro-ROS/freertos_apps/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/freertos_apps.svg)](https://github.com/micro-ROS/freertos_apps/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/freertos_apps/blob/foxy/README.md) | -| [zephyr_apps](https://github.com/micro-ROS/zephyr_apps) [![](https://img.shields.io/badge/ROS-dashing-brightgreen)](https://github.com/micro-ROS/zephyr_apps/tree/dashing) [![](https://img.shields.io/badge/ROS-foxy-brightgreen)](https://github.com/micro-ROS/zephyr_apps/tree/foxy) | Demo applications for Zephyr | [![](https://img.shields.io/badge/-unavailable-lightgrey)]() | [![](https://img.shields.io/github/issues/micro-ROS/zephyr_apps.svg)](https://github.com/micro-ROS/zephyr_apps/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/zephyr_apps.svg)](https://github.com/micro-ROS/zephyr_apps/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/zephyr_apps/blob/foxy/README.md) | -| [raspbian_apps](https://github.com/micro-ROS/raspian_apps) [![](https://img.shields.io/badge/ROS-dashing-brightgreen)](https://github.com/micro-ROS/raspbian_apps/tree/dashing) [![](https://img.shields.io/badge/ROS-foxy-brightgreen)](https://github.com/micro-ROS/raspbian_apps/tree/foxy) | Demo applications for Raspbian | [![](https://img.shields.io/badge/-unavailable-lightgrey)]() | [![](https://img.shields.io/github/issues/micro-ROS/raspbian_apps.svg)](https://github.com/micro-ROS/raspbian_apps/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/raspbian_apps.svg)](https://github.com/micro-ROS/raspbian_apps/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/raspbian_apps/blob/foxy/README.md) | -| [nuttx_apps](https://github.com/micro-ROS/nuttx_apps) [![](https://img.shields.io/badge/ROS-dashing-brightgreen)](https://github.com/micro-ROS/nuttx_apps/tree/dashing) [![](https://img.shields.io/badge/ROS-foxy-brightgreen)](https://github.com/micro-ROS/nuttx_apps/tree/foxy) | Demo applications for NuttX (**discontinued**) | [![](https://img.shields.io/badge/-unavailable-lightgrey)]() | [![](https://img.shields.io/github/issues/micro-ROS/nuttx_apps.svg)](https://github.com/micro-ROS/nuttx_apps/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/nuttx_apps.svg)](https://github.com/micro-ROS/nuttx_apps/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/nuttx_apps/blob/foxy/README.md) | -| [Kobuki demo](https://github.com/micro-ROS/micro-ROS_kobuki_demo) | Kobuki (Turtlebot 2) controller demo application using micro-ROS in an Olimex board over NuttX | [![](https://img.shields.io/badge/-unavailable-lightgrey)]() | [![](https://img.shields.io/github/issues/micro-ROS/micro-ROS_kobuki_demo.svg)](https://github.com/micro-ROS/micro-ROS_kobuki_demo/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/micro-ROS_kobuki_demo.svg)](https://github.com/micro-ROS/micro-ROS_kobuki_demo/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/micro-ROS_kobuki_demo/blob/master/README.md) | -| [Crazyflie demo](https://github.com/micro-ROS/micro-ROS_crazyflie_demo) [![](https://img.shields.io/badge/ROS-dashing-brightgreen)](https://github.com/micro-ROS/micro-ROS_crazyflie_demo/tree/dashing) [![](https://img.shields.io/badge/ROS-foxy-brightgreen)](https://github.com/micro-ROS/micro-ROS_crazyflie_demo/tree/foxy) | Crazyflie drone demo application using micro-ROS over FreeRTOS | [![](https://img.shields.io/badge/-unavailable-lightgrey)]() | [![](https://img.shields.io/github/issues/micro-ROS/micro-ROS_crazyflie_demo.svg)](https://github.com/micro-ROS/micro-ROS_crazyflie_demo/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/micro-ROS_crazyflie_demo.svg)](https://github.com/micro-ROS/micro-ROS_crazyflie_demo/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/micro-ROS_crazyflie_demo/blob/foxy/README.md) | +| Name | Description | CI | Issues / Pull Requests | Documentation | +| :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------ | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :---------------------------------------------------------------------------------------------------------------------------------- | +| [micro-ROS-demos](https://github.com/micro-ROS/micro-ROS-demos) [![](https://img.shields.io/badge/ROS-galactic-brightgreen)](https://github.com/micro-ROS/micro-ROS-demos/tree/galactic) [![](https://img.shields.io/badge/ROS-foxy-brightgreen)](https://github.com/micro-ROS/micro-ROS-demos/tree/foxy) | Collection of generic demos, using publishers, subscribers, custom messages, services and graph introspection | [![Build status](https://img.shields.io/github/workflow/status/micro-ROS/micro-ROS-demos/CI)](https://github.com/micro-ROS/micro-ROS-demos/actions?query=workflow%3ACI) | [![](https://img.shields.io/github/issues/micro-ROS/micro-ROS-demos.svg)](https://github.com/micro-ROS/micro-ROS-demos/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/micro-ROS-demos.svg)](https://github.com/micro-ROS/micro-ROS-demos/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/micro-ROS-demos/blob/foxy/README.md) | +| [freertos_apps](https://github.com/micro-ROS/freertos_apps) [![](https://img.shields.io/badge/ROS-foxy-brightgreen)](https://github.com/micro-ROS/freertos_apps/tree/foxy) | Demo applications for FreeRTOS | [![](https://img.shields.io/badge/-unavailable-lightgrey)]() | [![](https://img.shields.io/github/issues/micro-ROS/freertos_apps.svg)](https://github.com/micro-ROS/freertos_apps/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/freertos_apps.svg)](https://github.com/micro-ROS/freertos_apps/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/freertos_apps/blob/foxy/README.md) | +| [zephyr_apps](https://github.com/micro-ROS/zephyr_apps) [![](https://img.shields.io/badge/ROS-foxy-brightgreen)](https://github.com/micro-ROS/zephyr_apps/tree/foxy) | Demo applications for Zephyr | [![](https://img.shields.io/badge/-unavailable-lightgrey)]() | [![](https://img.shields.io/github/issues/micro-ROS/zephyr_apps.svg)](https://github.com/micro-ROS/zephyr_apps/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/zephyr_apps.svg)](https://github.com/micro-ROS/zephyr_apps/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/zephyr_apps/blob/foxy/README.md) | +| [raspbian_apps](https://github.com/micro-ROS/raspian_apps) [![](https://img.shields.io/badge/ROS-foxy-brightgreen)](https://github.com/micro-ROS/raspbian_apps/tree/foxy) | Demo applications for Raspbian | [![](https://img.shields.io/badge/-unavailable-lightgrey)]() | [![](https://img.shields.io/github/issues/micro-ROS/raspbian_apps.svg)](https://github.com/micro-ROS/raspbian_apps/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/raspbian_apps.svg)](https://github.com/micro-ROS/raspbian_apps/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/raspbian_apps/blob/foxy/README.md) | +| [nuttx_apps](https://github.com/micro-ROS/nuttx_apps) [![](https://img.shields.io/badge/ROS-dashing-brightgreen)](https://github.com/micro-ROS/nuttx_apps/tree/dashing) [![](https://img.shields.io/badge/ROS-foxy-brightgreen)](https://github.com/micro-ROS/nuttx_apps/tree/foxy) | Demo applications for NuttX (**discontinued**) | [![](https://img.shields.io/badge/-unavailable-lightgrey)]() | [![](https://img.shields.io/github/issues/micro-ROS/nuttx_apps.svg)](https://github.com/micro-ROS/nuttx_apps/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/nuttx_apps.svg)](https://github.com/micro-ROS/nuttx_apps/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/nuttx_apps/blob/foxy/README.md) | +| [Kobuki demo](https://github.com/micro-ROS/micro-ROS_kobuki_demo) | Kobuki (Turtlebot 2) controller demo application using micro-ROS in an Olimex board over NuttX | [![](https://img.shields.io/badge/-unavailable-lightgrey)]() | [![](https://img.shields.io/github/issues/micro-ROS/micro-ROS_kobuki_demo.svg)](https://github.com/micro-ROS/micro-ROS_kobuki_demo/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/micro-ROS_kobuki_demo.svg)](https://github.com/micro-ROS/micro-ROS_kobuki_demo/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/micro-ROS_kobuki_demo/blob/master/README.md) | +| [Crazyflie demo](https://github.com/micro-ROS/micro-ROS_crazyflie_demo) [![](https://img.shields.io/badge/ROS-foxy-brightgreen)](https://github.com/micro-ROS/micro-ROS_crazyflie_demo/tree/foxy) | Crazyflie drone demo application using micro-ROS over FreeRTOS | [![](https://img.shields.io/badge/-unavailable-lightgrey)]() | [![](https://img.shields.io/github/issues/micro-ROS/micro-ROS_crazyflie_demo.svg)](https://github.com/micro-ROS/micro-ROS_crazyflie_demo/issues) [![](https://img.shields.io/github/issues-pr/micro-ROS/micro-ROS_crazyflie_demo.svg)](https://github.com/micro-ROS/micro-ROS_crazyflie_demo/pulls) | [![](https://img.shields.io/badge/read-the%20docs-blue)](https://github.com/micro-ROS/micro-ROS_crazyflie_demo/blob/foxy/README.md) | ## Docker Images Status -| Image | Description | Status | -| ------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| base | Base image with a ROS 2 Foxy installation + micro-ROS specific build system tools. Used as base of any other micro-ROS image | [![Docker Automated build](https://img.shields.io/docker/cloud/automated/microros/base.svg?logo=docker)](https://hub.docker.com/r/microros/base/)[![Docker Build Status](https://img.shields.io/docker/cloud/build/microros/base.svg?logo=docker)](https://hub.docker.com/r/microros/base/)[![Compare Images](https://images.microbadger.com/badges/image/microros/base.svg)](https://microbadger.com/images/microros/base) | -| micro-ros-agent | Image containing a pre-compiled micro-ROS-Agent, ready to use as a standalone application | [![Docker Automated build](https://img.shields.io/docker/cloud/automated/microros/micro-ros-agent.svg?logo=docker)](https://hub.docker.com/r/microros/micro-ros-agent/)[![Docker Build Status](https://img.shields.io/docker/cloud/build/microros/micro-ros-agent.svg?logo=docker)](https://hub.docker.com/r/microros/micro-ros-agent/)[![Compare Images](https://images.microbadger.com/badges/image/microros/micro-ros-agent.svg)](https://microbadger.com/images/microros/micro-ros-agent) | -| micro-ros-demos | Contains pre-compiled micro-ROS demo applications, ready to use to get a taste of micro-ROS capabilities | [![Docker Automated build](https://img.shields.io/docker/cloud/automated/microros/micro-ros-demos.svg?logo=docker)](https://hub.docker.com/r/microros/micro-ros-demos/)[![Docker Build Status](https://img.shields.io/docker/cloud/build/microros/micro-ros-demos.svg?logo=docker)](https://hub.docker.com/r/microros/micro-ros-demos/)[![Compare Images](https://images.microbadger.com/badges/image/microros/micro-ros-demos.svg)](https://microbadger.com/images/microros/micro-ros-demos) | -| micro-ros-olimex-nuttx | Contains a ready to flash example for Olimex STM32 E407 | [![Docker Automated build](https://img.shields.io/docker/cloud/automated/microros/micro-ros-olimex-nuttx.svg?logo=docker)](https://hub.docker.com/r/microros/micro-ros-olimex-nuttx/)[![Docker Build Status](https://img.shields.io/docker/cloud/build/microros/micro-ros-olimex-nuttx.svg?logo=docker)](https://hub.docker.com/r/microros/micro-ros-olimex-nuttx/)[![Compare Images](https://images.microbadger.com/badges/image/microros/micro-ros-olimex-nuttx.svg)](https://microbadger.com/images/microros/micro-ros-olimex-nuttx) | -| micro_ros_arduino_builder | Allows to use a pre-compiled micro-ROS library to develop applications using Arduino IDE | [![Docker Automated build](https://img.shields.io/docker/cloud/automated/microros/micro_ros_arduino_builder.svg?logo=docker)](https://hub.docker.com/r/microros/micro_ros_arduino_builder/)[![Docker Build Status](https://img.shields.io/docker/cloud/build/microros/micro_ros_arduino_builder.svg?logo=docker)](https://hub.docker.com/r/microros/micro_ros_arduino_builder/)[![Compare Images](https://images.microbadger.com/badges/image/microros/micro_ros_arduino_builder.svg)](https://microbadger.com/images/microros/micro_ros_arduino_builder) | -| esp-idf-microros | Allows to use micro-ROS as a component of the ESP-IDF build system | [![Docker Automated build](https://img.shields.io/docker/cloud/automated/microros/esp-idf-microros.svg?logo=docker)](https://hub.docker.com/r/microros/esp-idf-microros/)[![Docker Build Status](https://img.shields.io/docker/cloud/build/microros/esp-idf-microros.svg?logo=docker)](https://hub.docker.com/r/microros/esp-idf-microros/)[![Compare Images](https://images.microbadger.com/badges/image/microros/esp-idf-microros.svg)](https://microbadger.com/images/microros/esp-idf-microros) | +| Image | Description | Status | +| -------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| base | Base image with a ROS 2 Foxy installation + micro-ROS specific build system tools. Used as base of any other micro-ROS image | [![Docker Automated build](https://img.shields.io/docker/cloud/automated/microros/base.svg?logo=docker)](https://hub.docker.com/r/microros/base/)[![Docker Build Status](https://img.shields.io/docker/cloud/build/microros/base.svg?logo=docker)](https://hub.docker.com/r/microros/base/)[![Compare Images](https://images.microbadger.com/badges/image/microros/base.svg)](https://microbadger.com/images/microros/base) | +| micro-ros-agent | Image containing a pre-compiled micro-ROS-Agent, ready to use as a standalone application | [![Docker Automated build](https://img.shields.io/docker/cloud/automated/microros/micro-ros-agent.svg?logo=docker)](https://hub.docker.com/r/microros/micro-ros-agent/)[![Docker Build Status](https://img.shields.io/docker/cloud/build/microros/micro-ros-agent.svg?logo=docker)](https://hub.docker.com/r/microros/micro-ros-agent/)[![Compare Images](https://images.microbadger.com/badges/image/microros/micro-ros-agent.svg)](https://microbadger.com/images/microros/micro-ros-agent) | +| micro-ros-demos | Contains pre-compiled micro-ROS demo applications, ready to use to get a taste of micro-ROS capabilities | [![Docker Automated build](https://img.shields.io/docker/cloud/automated/microros/micro-ros-demos.svg?logo=docker)](https://hub.docker.com/r/microros/micro-ros-demos/)[![Docker Build Status](https://img.shields.io/docker/cloud/build/microros/micro-ros-demos.svg?logo=docker)](https://hub.docker.com/r/microros/micro-ros-demos/)[![Compare Images](https://images.microbadger.com/badges/image/microros/micro-ros-demos.svg)](https://microbadger.com/images/microros/micro-ros-demos) | +| micro-ros-olimex-nuttx | Contains a ready to flash example for Olimex STM32 E407 | [![Docker Automated build](https://img.shields.io/docker/cloud/automated/microros/micro-ros-olimex-nuttx.svg?logo=docker)](https://hub.docker.com/r/microros/micro-ros-olimex-nuttx/)[![Docker Build Status](https://img.shields.io/docker/cloud/build/microros/micro-ros-olimex-nuttx.svg?logo=docker)](https://hub.docker.com/r/microros/micro-ros-olimex-nuttx/)[![Compare Images](https://images.microbadger.com/badges/image/microros/micro-ros-olimex-nuttx.svg)](https://microbadger.com/images/microros/micro-ros-olimex-nuttx) | +| micro_ros_static_library_builder | Allows to use a pre-compiled micro-ROS library to develop applications using Arduino IDE | [![Docker Automated build](https://img.shields.io/docker/cloud/automated/microros/micro_ros_static_library_builder.svg?logo=docker)](https://hub.docker.com/r/microros/micro_ros_static_library_builder/)[![Docker Build Status](https://img.shields.io/docker/cloud/build/microros/micro_ros_static_library_builder.svg?logo=docker)](https://hub.docker.com/r/microros/micro_ros_static_library_builder/)[![Compare Images](https://images.microbadger.com/badges/image/microros/micro_ros_static_library_builder.svg)](https://microbadger.com/images/microros/micro_ros_static_library_builder) | +| esp-idf-microros | Allows to use micro-ROS as a component of the ESP-IDF build system | [![Docker Automated build](https://img.shields.io/docker/cloud/automated/microros/esp-idf-microros.svg?logo=docker)](https://hub.docker.com/r/microros/esp-idf-microros/)[![Docker Build Status](https://img.shields.io/docker/cloud/build/microros/esp-idf-microros.svg?logo=docker)](https://hub.docker.com/r/microros/esp-idf-microros/)[![Compare Images](https://images.microbadger.com/badges/image/microros/esp-idf-microros.svg)](https://microbadger.com/images/microros/esp-idf-microros) | ## Webpage Source Code Repository Status @@ -76,11 +81,13 @@ Bloom release status of packages in repository [github.com/ros2/rclc/](https://g | [rclc](https://github.com/ros2/rclc/tree/master/rclc) | Dashing | [![Build Status](https://build.ros2.org/buildStatus/icon?job=Dpr__rclc__ubuntu_bionic_amd64)](https://build.ros2.org/job/Dpr__rclc__ubuntu_bionic_amd64/) | [![Build Status](https://build.ros2.org/buildStatus/icon?job=Dbin_ubv8_uBv8__rclc__ubuntu_bionic_arm64__binary)](https://build.ros2.org/job/Dbin_ubv8_uBv8__rclc__ubuntu_bionic_arm64__binary/) | [![Build Status](https://build.ros2.org/buildStatus/icon?job=Dbin_ubhf_uBhf__rclc__ubuntu_bionic_armhf__binary)](https://build.ros2.org/job/Dbin_ubhf_uBhf__rclc__ubuntu_bionic_armhf__binary/) | | | Eloquent | [![Build Status](https://build.ros2.org/buildStatus/icon?job=Epr__rclc__ubuntu_bionic_amd64)](https://build.ros2.org/job/Epr__rclc__ubuntu_bionic_amd64/) | [![Build Status](https://build.ros2.org/buildStatus/icon?job=Ebin_ubv8_uBv8__rclc__ubuntu_bionic_arm64__binary)](https://build.ros2.org/job/Ebin_ubv8_uBv8__rclc__ubuntu_bionic_arm64__binary/) | [![Build Status](https://build.ros2.org/buildStatus/icon?job=Ebin_ubhf_uBhf__rclc__ubuntu_bionic_armhf__binary)](https://build.ros2.org/job/Ebin_ubhf_uBhf__rclc__ubuntu_bionic_armhf__binary/) | | | Foxy | [![Build Status](https://build.ros2.org/buildStatus/icon?job=Fpr__rclc__ubuntu_focal_amd64)](https://build.ros2.org/job/Fpr__rclc__ubuntu_focal_amd64/) | [![Build Status](https://build.ros2.org/buildStatus/icon?job=Fbin_ubv8_uFv8__rclc__ubuntu_focal_arm64__binary)](https://build.ros2.org/job/Fbin_ubv8_uFv8__rclc__ubuntu_focal_arm64__binary/) | | +| | Galactic | [![Build Status](https://build.ros2.org/buildStatus/icon?job=Rpr__rclc__ubuntu_focal_amd64)](https://build.ros2.org/job/Gpr__rclc__ubuntu_focal_amd64/) | [![Build Status](https://build.ros2.org/buildStatus/icon?job=Rbin_ufv8_uFv8__rclc__ubuntu_focal_arm64__binary)](https://build.ros2.org/job/Gbin_ufv8_uFv8__rclc__ubuntu_focal_arm64__binary/) | | | | Rolling | [![Build Status](https://build.ros2.org/buildStatus/icon?job=Rpr__rclc__ubuntu_focal_amd64)](https://build.ros2.org/job/Rpr__rclc__ubuntu_focal_amd64/) | [![Build Status](https://build.ros2.org/buildStatus/icon?job=Rbin_ufv8_uFv8__rclc__ubuntu_focal_arm64__binary)](https://build.ros2.org/job/Rbin_ufv8_uFv8__rclc__ubuntu_focal_arm64__binary/) | | | | | | | | | [rclc_examples](https://github.com/ros2/rclc/tree/master/rclc_examples) | Dashing | [![Build Status](https://build.ros2.org/buildStatus/icon?job=Dbin_uB64__rclc_examples__ubuntu_bionic_amd64__binary)](https://build.ros2.org/job/Dbin_uB64__rclc_examples__ubuntu_bionic_amd64__binary/) | [![Build Status](https://build.ros2.org/buildStatus/icon?job=Dbin_ubv8_uBv8__rclc_examples__ubuntu_bionic_arm64__binary&build=8)](https://build.ros2.org/job/Dbin_ubv8_uBv8__rclc_examples__ubuntu_bionic_arm64__binary/8/) | [![Build Status](https://build.ros2.org/buildStatus/icon?job=Dbin_ubhf_uBhf__rclc_examples__ubuntu_bionic_armhf__binary)](https://build.ros2.org/job/Dbin_ubhf_uBhf__rclc_examples__ubuntu_bionic_armhf__binary/) | | | Eloquent | [![Build Status](https://build.ros2.org/buildStatus/icon?job=Ebin_uB64__rclc_examples__ubuntu_bionic_amd64__binary)](https://build.ros2.org/job/Ebin_uB64__rclc_examples__ubuntu_bionic_amd64__binary/) | [![Build Status](https://build.ros2.org/buildStatus/icon?job=Ebin_ubv8_uBv8__rclc_examples__ubuntu_bionic_arm64__binary&build=8)](https://build.ros2.org/job/Ebin_ubv8_uBv8__rclc_examples__ubuntu_bionic_arm64__binary/8/) | [![Build Status](https://build.ros2.org/buildStatus/icon?job=Ebin_ubhf_uBhf__rclc_examples__ubuntu_bionic_armhf__binary)](https://build.ros2.org/job/Ebin_ubhf_uBhf__rclc_examples__ubuntu_bionic_armhf__binary/) | | | Foxy | [![Build Status](https://build.ros2.org/buildStatus/icon?job=Fbin_uF64__rclc_examples__ubuntu_focal_amd64__binary)](https://build.ros2.org/job/Fbin_uF64__rclc_examples__ubuntu_focal_amd64__binary/) | [![Build Status](https://build.ros2.org/buildStatus/icon?job=Fbin_ubv8_uFv8__rclc_examples__ubuntu_focal_arm64__binary)](https://build.ros2.org/job/Fbin_ubv8_uFv8__rclc_examples__ubuntu_focal_arm64__binary/) | | +| | Galactic | [![Build Status](https://build.ros2.org/buildStatus/icon?job=Gbin_uF64__rclc_examples__ubuntu_focal_amd64__binary)](https://build.ros2.org/job/Gbin_uF64__rclc_examples__ubuntu_focal_amd64__binary/) | [![Build Status](https://build.ros2.org/buildStatus/icon?job=Gbin_ufv8_uFv8__rclc_examples__ubuntu_focal_arm64__binary)](https://build.ros2.org/job/Gbin_ufv8_uFv8__rclc_examples__ubuntu_focal_arm64__binary/) | | | | Rolling | [![Build Status](https://build.ros2.org/buildStatus/icon?job=Rbin_uF64__rclc_examples__ubuntu_focal_amd64__binary)](https://build.ros2.org/job/Rbin_uF64__rclc_examples__ubuntu_focal_amd64__binary/) | [![Build Status](https://build.ros2.org/buildStatus/icon?job=Rbin_ufv8_uFv8__rclc_examples__ubuntu_focal_arm64__binary)](https://build.ros2.org/job/Rbin_ufv8_uFv8__rclc_examples__ubuntu_focal_arm64__binary/) | | | | | | | | | [rclc_lifecycle](https://github.com/ros2/rclc/tree/master/rclc_lifecycle) | Dashing | [![Build Status](https://build.ros2.org/buildStatus/icon?job=Dbin_uB64__rclc_lifecycle__ubuntu_bionic_amd64__binary)](https://build.ros2.org/job/Dbin_uB64__rclc_lifecycle__ubuntu_bionic_amd64__binary/) | [![Build Status](https://build.ros2.org/buildStatus/icon?job=Dbin_ubv8_uBv8__rclc_lifecycle__ubuntu_bionic_arm64__binary)](https://build.ros2.org/job/Dbin_ubv8_uBv8__rclc_lifecycle__ubuntu_bionic_arm64__binary/) | [![Build Status](https://build.ros2.org/buildStatus/icon?job=Dbin_ubhf_uBhf__rclc_lifecycle__ubuntu_bionic_armhf__binary)](https://build.ros2.org/job/Dbin_ubhf_uBhf__rclc_lifecycle__ubuntu_bionic_armhf__binary/) | diff --git a/_includes/utils_doc/Modules/group__stringutils.md b/_includes/utils_doc/Modules/group__stringutils.md new file mode 100644 index 00000000..553dd256 --- /dev/null +++ b/_includes/utils_doc/Modules/group__stringutils.md @@ -0,0 +1,205 @@ +# micro-ROS String Utilities + +## Functions + +| | Name | +| -------------- | -------------- | +| MICRO_ROS_UTILITIES_PUBLIC rosidl_runtime_c__String | **[micro_ros_string_utilities_init](#function-micro_ros_string_utilities_init)**(const char * data)
Create a rosidl_runtime_c__String from a char pointer. | +| MICRO_ROS_UTILITIES_PUBLIC rosidl_runtime_c__String | **[micro_ros_string_utilities_set](#function-micro_ros_string_utilities_set)**(rosidl_runtime_c__String str, const char * data)
Create a rosidl_runtime_c__String from a char pointer. | +| const MICRO_ROS_UTILITIES_PUBLIC char * | **[micro_ros_string_utilities_get_c_str](#function-micro_ros_string_utilities_get_c_str)**(rosidl_runtime_c__String str)
Returns the char pointer to the rosidl_runtime_c__String data. | +| rosidl_runtime_c__String | **[micro_ros_string_utilities_append](#function-micro_ros_string_utilities_append)**(rosidl_runtime_c__String str, const char * data)
Appends a char pointer to the end of a rosidl_runtime_c__String. | +| MICRO_ROS_UTILITIES_PUBLIC rosidl_runtime_c__String | **[micro_ros_string_utilities_remove_tail_chars](#function-micro_ros_string_utilities_remove_tail_chars)**(rosidl_runtime_c__String str, const size_t n)
Removes characters from the end of a string. | +| MICRO_ROS_UTILITIES_PUBLIC void | **[micro_ros_string_utilities_destroy](#function-micro_ros_string_utilities_destroy)**(rosidl_runtime_c__String * str)
Destroys a rosidl_runtime_c__String. | + + +## Functions Documentation + +### function micro_ros_string_utilities_init + +```cpp +MICRO_ROS_UTILITIES_PUBLIC rosidl_runtime_c__String micro_ros_string_utilities_init( + const char * data +) +``` + +Create a rosidl_runtime_c__String from a char pointer. + +**Parameters**: + + * **data** char pointer + + +**Return**: `rosidl_runtime_c__String` string containing data + + + +------------------ + + +| Attribute | Adherence | +| -------- | -------- | +| Allocates Memory | Yes | +| Thread-Safe | No | +| Uses Atomics | No | +| Lock-Free | Yes | + + +### function micro_ros_string_utilities_set + +```cpp +MICRO_ROS_UTILITIES_PUBLIC rosidl_runtime_c__String micro_ros_string_utilities_set( + rosidl_runtime_c__String str, + const char * data +) +``` + +Create a rosidl_runtime_c__String from a char pointer. + +**Parameters**: + + * **str** rosidl_runtime_c__String to set + * **data** char pointer + + +**Return**: `rosidl_runtime_c__String` string containing data + + + +------------------ + + +| Attribute | Adherence | +| -------- | -------- | +| Allocates Memory | Yes | +| Thread-Safe | No | +| Uses Atomics | No | +| Lock-Free | Yes | + + +### function micro_ros_string_utilities_get_c_str + +```cpp +const MICRO_ROS_UTILITIES_PUBLIC char * micro_ros_string_utilities_get_c_str( + rosidl_runtime_c__String str +) +``` + +Returns the char pointer to the rosidl_runtime_c__String data. + +**Parameters**: + + * **str** a rosidl_runtime_c__String + + +**Return**: `const char` char pointer + + + +------------------ + + +| Attribute | Adherence | +| -------- | -------- | +| Allocates Memory | Yes | +| Thread-Safe | No | +| Uses Atomics | No | +| Lock-Free | Yes | + + +### function micro_ros_string_utilities_append + +```cpp +rosidl_runtime_c__String micro_ros_string_utilities_append( + rosidl_runtime_c__String str, + const char * data +) +``` + +Appends a char pointer to the end of a rosidl_runtime_c__String. + +**Parameters**: + + * **str** a rosidl_runtime_c__String + * **data** characters to append + + +**Return**: `rosidl_runtime_c__String` new string + + + +------------------ + + +| Attribute | Adherence | +| -------- | -------- | +| Allocates Memory | Yes | +| Thread-Safe | No | +| Uses Atomics | No | +| Lock-Free | Yes | + + +### function micro_ros_string_utilities_remove_tail_chars + +```cpp +MICRO_ROS_UTILITIES_PUBLIC rosidl_runtime_c__String micro_ros_string_utilities_remove_tail_chars( + rosidl_runtime_c__String str, + const size_t n +) +``` + +Removes characters from the end of a string. + +**Parameters**: + + * **str** a rosidl_runtime_c__String + * **n** number of characters to remove + + +**Return**: `rosidl_runtime_c__String` new string + + + +------------------ + + +| Attribute | Adherence | +| -------- | -------- | +| Allocates Memory | Yes | +| Thread-Safe | No | +| Uses Atomics | No | +| Lock-Free | Yes | + + +### function micro_ros_string_utilities_destroy + +```cpp +MICRO_ROS_UTILITIES_PUBLIC void micro_ros_string_utilities_destroy( + rosidl_runtime_c__String * str +) +``` + +Destroys a rosidl_runtime_c__String. + +**Parameters**: + + * **str** a rosidl_runtime_c__String + + + + +------------------ + + +| Attribute | Adherence | +| -------- | -------- | +| Allocates Memory | Yes | +| Thread-Safe | No | +| Uses Atomics | No | +| Lock-Free | Yes | + + + + + + +------------------------------- \ No newline at end of file diff --git a/_includes/utils_doc/Modules/group__typeutils.md b/_includes/utils_doc/Modules/group__typeutils.md new file mode 100644 index 00000000..9a17a414 --- /dev/null +++ b/_includes/utils_doc/Modules/group__typeutils.md @@ -0,0 +1,267 @@ +# micro-ROS Types Utilities + +## Classes + +| | Name | +| -------------- | -------------- | +| struct | **[micro_ros_utilities_memory_rule_t](Classes/structmicro__ros__utilities__memory__rule__t.md)** | +| struct | **[micro_ros_utilities_memory_conf_t](Classes/structmicro__ros__utilities__memory__conf__t.md)** | + +## Types + +| | Name | +| -------------- | -------------- | +| typedef struct micro_ros_utilities_memory_rule_t | **[micro_ros_utilities_memory_rule_t](Modules/group__typeutils.md#typedef-micro_ros_utilities_memory_rule_t)** | +| typedef struct micro_ros_utilities_memory_conf_t | **[micro_ros_utilities_memory_conf_t](Modules/group__typeutils.md#typedef-micro_ros_utilities_memory_conf_t)** | + +## Functions + +| | Name | +| -------------- | -------------- | +| MICRO_ROS_UTILITIES_PUBLIC rosidl_runtime_c__String | **[micro_ros_utilities_type_info](#function-micro_ros_utilities_type_info)**(const rosidl_message_type_support_t * type_support)
Returns a string with the type instronspection data. | +| MICRO_ROS_UTILITIES_PUBLIC size_t | **[micro_ros_utilities_get_dynamic_size](#function-micro_ros_utilities_get_dynamic_size)**(const rosidl_message_type_support_t * type_support, const micro_ros_utilities_memory_conf_t conf)
Returns the dynamic memory size that will be used for a type. | +| MICRO_ROS_UTILITIES_PUBLIC size_t | **[micro_ros_utilities_get_static_size](#function-micro_ros_utilities_get_static_size)**(const rosidl_message_type_support_t * type_support, const micro_ros_utilities_memory_conf_t conf)
Returns the static memory size that will be used for a type. | +| MICRO_ROS_UTILITIES_PUBLIC bool | **[micro_ros_utilities_create_message_memory](#function-micro_ros_utilities_create_message_memory)**(const rosidl_message_type_support_t * type_support, void * ros_msg, const micro_ros_utilities_memory_conf_t conf)
Allocates the dynamic memory required for a message. | +| MICRO_ROS_UTILITIES_PUBLIC bool | **[micro_ros_utilities_create_static_message_memory](#function-micro_ros_utilities_create_static_message_memory)**(const rosidl_message_type_support_t * type_support, void * ros_msg, const micro_ros_utilities_memory_conf_t conf, uint8_t * buffer, size_t buffer_len)
Allocates the memory required for a message in a user-provided buffer. | +| MICRO_ROS_UTILITIES_PUBLIC bool | **[micro_ros_utilities_destroy_message_memory](#function-micro_ros_utilities_destroy_message_memory)**(const rosidl_message_type_support_t * type_support, void * ros_msg, const micro_ros_utilities_memory_conf_t conf)
Deallocates the dynamic memory of a message. | + +## Attributes + +| | Name | +| -------------- | -------------- | +| const micro_ros_utilities_memory_conf_t | **[micro_ros_utilities_memory_conf_default](Modules/group__typeutils.md#variable-micro_ros_utilities_memory_conf_default)** | + +## Types Documentation + +### typedef micro_ros_utilities_memory_rule_t + +```cpp +typedef struct micro_ros_utilities_memory_rule_t micro_ros_utilities_memory_rule_t; +``` + + +### typedef micro_ros_utilities_memory_conf_t + +```cpp +typedef struct micro_ros_utilities_memory_conf_t micro_ros_utilities_memory_conf_t; +``` + + + +## Functions Documentation + +### function micro_ros_utilities_type_info + +```cpp +MICRO_ROS_UTILITIES_PUBLIC rosidl_runtime_c__String micro_ros_utilities_type_info( + const rosidl_message_type_support_t * type_support +) +``` + +Returns a string with the type instronspection data. + +**Parameters**: + + * **type_support** ROS 2 typesupport + + +**Return**: `rosidl_runtime_c__String` string containing data + + + +------------------ + + +| Attribute | Adherence | +| -------- | -------- | +| Allocates Memory | Yes | +| Thread-Safe | No | +| Uses Atomics | No | +| Lock-Free | Yes | + + +### function micro_ros_utilities_get_dynamic_size + +```cpp +MICRO_ROS_UTILITIES_PUBLIC size_t micro_ros_utilities_get_dynamic_size( + const rosidl_message_type_support_t * type_support, + const micro_ros_utilities_memory_conf_t conf +) +``` + +Returns the dynamic memory size that will be used for a type. + +**Parameters**: + + * **type_support** ROS 2 typesupport + * **conf** Utils configurator + + +**Return**: `size_t` Size in Bytes that will be used + + + +------------------ + + +| Attribute | Adherence | +| -------- | -------- | +| Allocates Memory | Yes | +| Thread-Safe | No | +| Uses Atomics | No | +| Lock-Free | Yes | + + +### function micro_ros_utilities_get_static_size + +```cpp +MICRO_ROS_UTILITIES_PUBLIC size_t micro_ros_utilities_get_static_size( + const rosidl_message_type_support_t * type_support, + const micro_ros_utilities_memory_conf_t conf +) +``` + +Returns the static memory size that will be used for a type. + +**Parameters**: + + * **type_support** ROS 2 typesupport + * **conf** Utils configurator + + +**Return**: `size_t` Size in Bytes that will be used + + + +------------------ + + +| Attribute | Adherence | +| -------- | -------- | +| Allocates Memory | Yes | +| Thread-Safe | No | +| Uses Atomics | No | +| Lock-Free | Yes | + + +### function micro_ros_utilities_create_message_memory + +```cpp +MICRO_ROS_UTILITIES_PUBLIC bool micro_ros_utilities_create_message_memory( + const rosidl_message_type_support_t * type_support, + void * ros_msg, + const micro_ros_utilities_memory_conf_t conf +) +``` + +Allocates the dynamic memory required for a message. + +**Parameters**: + + * **type_support** ROS 2 typesupport + * **ros_msg** ROS 2 msg with no type + * **conf** Utils configurator + + +**Return**: `bool` true if success + + + +------------------ + + +| Attribute | Adherence | +| -------- | -------- | +| Allocates Memory | Yes | +| Thread-Safe | No | +| Uses Atomics | No | +| Lock-Free | Yes | + + +### function micro_ros_utilities_create_static_message_memory + +```cpp +MICRO_ROS_UTILITIES_PUBLIC bool micro_ros_utilities_create_static_message_memory( + const rosidl_message_type_support_t * type_support, + void * ros_msg, + const micro_ros_utilities_memory_conf_t conf, + uint8_t * buffer, + size_t buffer_len +) +``` + +Allocates the memory required for a message in a user-provided buffer. + +**Parameters**: + + * **type_support** ROS 2 typesupport + * **ros_msg** ROS 2 msg with no type + * **conf** Utils configurator + * **buffer** User buffer + * **buffer_len** User buffer length + + +**Return**: `bool` true if success + + + +------------------ + + +| Attribute | Adherence | +| -------- | -------- | +| Allocates Memory | Yes | +| Thread-Safe | No | +| Uses Atomics | No | +| Lock-Free | Yes | + + +### function micro_ros_utilities_destroy_message_memory + +```cpp +MICRO_ROS_UTILITIES_PUBLIC bool micro_ros_utilities_destroy_message_memory( + const rosidl_message_type_support_t * type_support, + void * ros_msg, + const micro_ros_utilities_memory_conf_t conf +) +``` + +Deallocates the dynamic memory of a message. + +**Parameters**: + + * **type_support** ROS 2 typesupport + * **ros_msg** ROS 2 msg with no type + * **conf** Utils configurator + + +**Return**: `bool` true if success + + + +------------------ + + +| Attribute | Adherence | +| -------- | -------- | +| Allocates Memory | Yes | +| Thread-Safe | No | +| Uses Atomics | No | +| Lock-Free | Yes | + + + +## Attributes Documentation + +### variable micro_ros_utilities_memory_conf_default + +```cpp +static const micro_ros_utilities_memory_conf_t micro_ros_utilities_memory_conf_default = +{20, 5, 5, NULL, 0, NULL}; +``` + + + + + +------------------------------- \ No newline at end of file diff --git a/_includes/utils_doc/index_groups.md b/_includes/utils_doc/index_groups.md new file mode 100644 index 00000000..37428716 --- /dev/null +++ b/_includes/utils_doc/index_groups.md @@ -0,0 +1,11 @@ +# Modules + + + + +* **group [micro-ROS String Utilities](Modules/group__stringutils.md)** +* **group [micro-ROS Types Utilities](Modules/group__typeutils.md)** + + + +------------------------------- From da1f01f0a1422c0fd1975501f1c55357b8c4c245 Mon Sep 17 00:00:00 2001 From: Pablo Garrido Date: Fri, 28 May 2021 11:04:06 +0200 Subject: [PATCH 3/5] Update --- .github/workflows/generate_api_reference.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/generate_api_reference.yml b/.github/workflows/generate_api_reference.yml index 9eef4dfe..2f3f587d 100644 --- a/.github/workflows/generate_api_reference.yml +++ b/.github/workflows/generate_api_reference.yml @@ -76,9 +76,9 @@ jobs: - name: Create Pull Request uses: peter-evans/create-pull-request@v3 with: - commit-message: micro-ROS RMW API reference auto-update ${{ steps.date.outputs.date }} - title: micro-ROS RMW API reference auto-update ${{ steps.date.outputs.date }} - body: This PR is autogenerated and updates the micro-ROS RMW API reference. Close and reopen to trigger CI. - branch: autoupdate_micro_ros_rmw_api_reference + commit-message: micro-ROS Utils API reference auto-update ${{ steps.date.outputs.date }} + title: micro-ROS Utils API reference auto-update ${{ steps.date.outputs.date }} + body: This PR is autogenerated and updates the micro-ROS Utils API reference. Close and reopen to trigger CI. + branch: autoupdate_micro_ros_utils_api_reference delete-branch: true base: master \ No newline at end of file From 79bef965de509f4542b1898604bf8ea76c9e66e0 Mon Sep 17 00:00:00 2001 From: Pablo Garrido Date: Fri, 28 May 2021 11:20:05 +0200 Subject: [PATCH 4/5] Update --- .../utils_doc/Modules/group__typeutils.md | 84 ++++++++----------- 1 file changed, 35 insertions(+), 49 deletions(-) diff --git a/_includes/utils_doc/Modules/group__typeutils.md b/_includes/utils_doc/Modules/group__typeutils.md index 9a17a414..8111b024 100644 --- a/_includes/utils_doc/Modules/group__typeutils.md +++ b/_includes/utils_doc/Modules/group__typeutils.md @@ -1,19 +1,5 @@ # micro-ROS Types Utilities -## Classes - -| | Name | -| -------------- | -------------- | -| struct | **[micro_ros_utilities_memory_rule_t](Classes/structmicro__ros__utilities__memory__rule__t.md)** | -| struct | **[micro_ros_utilities_memory_conf_t](Classes/structmicro__ros__utilities__memory__conf__t.md)** | - -## Types - -| | Name | -| -------------- | -------------- | -| typedef struct micro_ros_utilities_memory_rule_t | **[micro_ros_utilities_memory_rule_t](Modules/group__typeutils.md#typedef-micro_ros_utilities_memory_rule_t)** | -| typedef struct micro_ros_utilities_memory_conf_t | **[micro_ros_utilities_memory_conf_t](Modules/group__typeutils.md#typedef-micro_ros_utilities_memory_conf_t)** | - ## Functions | | Name | @@ -29,7 +15,7 @@ | | Name | | -------------- | -------------- | -| const micro_ros_utilities_memory_conf_t | **[micro_ros_utilities_memory_conf_default](Modules/group__typeutils.md#variable-micro_ros_utilities_memory_conf_default)** | +| const micro_ros_utilities_memory_conf_t | **micro_ros_utilities_memory_conf_default** | ## Types Documentation @@ -58,14 +44,14 @@ MICRO_ROS_UTILITIES_PUBLIC rosidl_runtime_c__String micro_ros_utilities_type_inf ) ``` -Returns a string with the type instronspection data. +Returns a string with the type instronspection data. -**Parameters**: +**Parameters**: - * **type_support** ROS 2 typesupport + * **type_support** ROS 2 typesupport -**Return**: `rosidl_runtime_c__String` string containing data +**Return**: `rosidl_runtime_c__String` string containing data @@ -89,15 +75,15 @@ MICRO_ROS_UTILITIES_PUBLIC size_t micro_ros_utilities_get_dynamic_size( ) ``` -Returns the dynamic memory size that will be used for a type. +Returns the dynamic memory size that will be used for a type. -**Parameters**: +**Parameters**: - * **type_support** ROS 2 typesupport - * **conf** Utils configurator + * **type_support** ROS 2 typesupport + * **conf** Utils configurator -**Return**: `size_t` Size in Bytes that will be used +**Return**: `size_t` Size in Bytes that will be used @@ -121,15 +107,15 @@ MICRO_ROS_UTILITIES_PUBLIC size_t micro_ros_utilities_get_static_size( ) ``` -Returns the static memory size that will be used for a type. +Returns the static memory size that will be used for a type. -**Parameters**: +**Parameters**: - * **type_support** ROS 2 typesupport - * **conf** Utils configurator + * **type_support** ROS 2 typesupport + * **conf** Utils configurator -**Return**: `size_t` Size in Bytes that will be used +**Return**: `size_t` Size in Bytes that will be used @@ -154,16 +140,16 @@ MICRO_ROS_UTILITIES_PUBLIC bool micro_ros_utilities_create_message_memory( ) ``` -Allocates the dynamic memory required for a message. +Allocates the dynamic memory required for a message. -**Parameters**: +**Parameters**: - * **type_support** ROS 2 typesupport - * **ros_msg** ROS 2 msg with no type - * **conf** Utils configurator + * **type_support** ROS 2 typesupport + * **ros_msg** ROS 2 msg with no type + * **conf** Utils configurator -**Return**: `bool` true if success +**Return**: `bool` true if success @@ -190,18 +176,18 @@ MICRO_ROS_UTILITIES_PUBLIC bool micro_ros_utilities_create_static_message_memory ) ``` -Allocates the memory required for a message in a user-provided buffer. +Allocates the memory required for a message in a user-provided buffer. -**Parameters**: +**Parameters**: - * **type_support** ROS 2 typesupport - * **ros_msg** ROS 2 msg with no type - * **conf** Utils configurator - * **buffer** User buffer - * **buffer_len** User buffer length + * **type_support** ROS 2 typesupport + * **ros_msg** ROS 2 msg with no type + * **conf** Utils configurator + * **buffer** User buffer + * **buffer_len** User buffer length -**Return**: `bool` true if success +**Return**: `bool` true if success @@ -226,16 +212,16 @@ MICRO_ROS_UTILITIES_PUBLIC bool micro_ros_utilities_destroy_message_memory( ) ``` -Deallocates the dynamic memory of a message. +Deallocates the dynamic memory of a message. -**Parameters**: +**Parameters**: - * **type_support** ROS 2 typesupport - * **ros_msg** ROS 2 msg with no type - * **conf** Utils configurator + * **type_support** ROS 2 typesupport + * **ros_msg** ROS 2 msg with no type + * **conf** Utils configurator -**Return**: `bool` true if success +**Return**: `bool` true if success From 739b21f263c7b0b4f69ce5f51173efffe8654899 Mon Sep 17 00:00:00 2001 From: Pablo Garrido Date: Fri, 28 May 2021 11:22:15 +0200 Subject: [PATCH 5/5] Update --- scripts/cibuild | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/cibuild b/scripts/cibuild index 8f0a1faf..06085ee9 100755 --- a/scripts/cibuild +++ b/scripts/cibuild @@ -19,6 +19,7 @@ IGNORE_HREFS=${IGNORE_HREFS:+$IGNORE_HREFS,}$(ruby -e "puts %w{ omg.org twitter.com ieeexplore.ieee.org + build.ros2.org ${ADDITIONS} }.map{|h| \"/#{h}/\"}.join(\",\")" )