Skip to content

Commit

Permalink
Fix URLs
Browse files Browse the repository at this point in the history
  • Loading branch information
pablogs9 committed Feb 13, 2024
1 parent 19f1e97 commit 93ae75a
Show file tree
Hide file tree
Showing 14 changed files with 20 additions and 20 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ Our approach is based on the ROS 2 Lifecycle. The primary goal of the ROS 2 life
The description of the concept can be found at:
[http://design.ros2.org/articles/node_lifecycle.html](http://design.ros2.org/articles/node_lifecycle.html)
The implementation of the Lifecycle Node is described at:
[https://index.ros.org/doc/ros2/Managed-Nodes/](https://index.ros.org/doc/ros2/Managed-Nodes/).
[https://design.ros2.org/articles/node_lifecycle.html](https://design.ros2.org/articles/node_lifecycle.html).

## Main Features

Expand Down
2 changes: 1 addition & 1 deletion _docs/overview/ROS_2_feature_comparison/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ title: ROS 2 Feature Comparison
permalink: /docs/overview/ROS_2_feature_comparison/
---

Comparison of micro-ROS features with ROS 2 features. The following list has been compiled from [https://index.ros.org/doc/ros2/Features/](https://index.ros.org/doc/ros2/Features/) and [https://index.ros.org/doc/ros2/Roadmap/](https://index.ros.org/doc/ros2/Roadmap/), and the features have been organized into sub-tables according to the macrocategories defined in the [Features and Architecture page](https://micro-ros.github.io//docs/overview/features/).
Comparison of micro-ROS features with ROS 2 features. The following list has been compiled from [https://docs.ros.org/en/rolling/The-ROS2-Project/Features.html](https://docs.ros.org/en/rolling/The-ROS2-Project/Features.html) and [https://docs.ros.org/en/rolling/The-ROS2-Project/Roadmap.html](https://docs.ros.org/en/rolling/The-ROS2-Project/Roadmap.html), and the features have been organized into sub-tables according to the macrocategories defined in the [Features and Architecture page](https://micro-ros.github.io//docs/overview/features/).

<style>
.status_flag {
Expand Down
2 changes: 1 addition & 1 deletion _docs/overview/docker_ci_status/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ Most repositories can be found in GitHub's micro-ROS organization at [github.com
| [freertos_apps](https://github.com/micro-ROS/freertos_apps) [![](https://img.shields.io/badge/ROS-humble-brightgreen)](https://github.com/micro-ROS/freertos_apps/tree/humble) | 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/humble/README.md) |
| [zephyr_apps](https://github.com/micro-ROS/zephyr_apps) [![](https://img.shields.io/badge/ROS-humble-brightgreen)](https://github.com/micro-ROS/zephyr_apps/tree/humble) | 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/humble/README.md) |
| [raspbian_apps](https://github.com/micro-ROS/raspbian_apps) [![](https://img.shields.io/badge/ROS-humble-brightgreen)](https://github.com/micro-ROS/raspbian_apps/tree/humble) | 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/humble/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-humble-brightgreen)](https://github.com/micro-ROS/nuttx_apps/tree/humble) | 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/humble/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-humble-brightgreen)](https://github.com/micro-ROS/nuttx_apps) | 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) |
| [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-humble-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) |

Expand Down
2 changes: 1 addition & 1 deletion _docs/overview/features/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,7 @@ Micro-ROS offers **seven key features** that make it ready for use in your micro

## Layered and Modular Architecture

Micro-ROS follows the [ROS 2 architecture](https://index.ros.org/doc/ros2/) and makes use of its middleware pluggability to use [DDS-XRCE](https://www.omg.org/spec/DDS-XRCE/), which is optimized for microcontrollers. Moreover, it uses POSIX-based RTOS (FreeRTOS, Zephyr, or NuttX) instead of Linux.
Micro-ROS follows the [ROS 2 architecture](https://docs.ros.org/) and makes use of its middleware pluggability to use [DDS-XRCE](https://www.omg.org/spec/DDS-XRCE/), which is optimized for microcontrollers. Moreover, it uses POSIX-based RTOS (FreeRTOS, Zephyr, or NuttX) instead of Linux.

<img src="/img/micro-ROS_architecture.png" style="display: block; margin: auto; width: 100%; max-width: 500px;"/>

Expand Down
Binary file added _docs/overview/hardware/imgs/esp32.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion _docs/overview/hardware/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,7 @@ The officially supported boards are those which have been carried out or tested
</div>

<div class="hardwareitem_image">
<img src="/img/posts/logo-zephyr.jpg">
<img src="/imgs/esp32.jpg">
</div>
</div>

Expand Down
2 changes: 1 addition & 1 deletion _docs/overview/users_and_clients/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ customers_list:
text: Renesas is a global semiconductor company delivering trusted embedded design innovation with complete semiconductor solutions that enable billions of connected, intelligent devices to enhance the way people work and live.
title: Renesas
url: www.renesas.com
- path: https://upload.wikimedia.org/wikipedia/commons/thumb/b/bf/LG_logo_%282015%29.svg/2560px-LG_logo_%282015%29.svg.png
- path: https://upload.wikimedia.org/wikipedia/commons/2/2b/Renesas_Electronics_logo.svg
text: LG Electronics is one of the fourth-largest electronics company in South Korea. It comprises four business units home entertainment, mobile communications, home appliances and vehicle components
title: LG
url: www.lg.com
Expand Down
8 changes: 4 additions & 4 deletions _docs/tutorials/advanced/create_new_type/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ int64 int64_test
uint64 uint64_test
```

Now, you can build your micro-ROS workspace as usual. As explained in [**First micro-ROS application on an RTOS**](../../core/first_application_rtos/), the `ros2 run micro_ros_setup build_firmware.sh` command will build all packages located inside `mcu_ws`.
Now, you can build your micro-ROS workspace as usual. As explained in [**First micro-ROS application on an RTOS**](../../core/first_application_rtos/), the `ros2 run micro_ros_setup build_firmware.sh` command will build all packages located inside `mcu_ws`.

In your micro-ROS application code, you can use your new message type as usual:

Expand All @@ -75,17 +75,17 @@ msg.uint32_test = 42;

rclc_publisher_init_default(&publisher, &node, ROSIDL_GET_MSG_TYPE_SUPPORT(my_custom_message, msg, MyCustomMessage), "my_custom_publisher");
rcl_publish(&publisher, &msg, NULL);

...
```
You can find further information in the [ROS 2 Create custom ROS 2 msg and srv files](https://index.ros.org/doc/ros2/Tutorials/Custom-ROS2-Interfaces).
You can find further information in the [ROS 2 Create custom ROS 2 msg and srv files](https://docs.ros.org/en/rolling/Tutorials/Beginner-Client-Libraries/Single-Package-Define-And-Use-Interface.html).
## Using type composition
It is possible to create custom types that include members from another ROS 2 message types packages. For example let's add a member with type `Point32` from the ROS 2 package `geometry_msgs`.
First of all, you have to include the dependency in the `CMakeLists.txt`:
First of all, you have to include the dependency in the `CMakeLists.txt`:
```cmake
...
Expand Down
6 changes: 3 additions & 3 deletions _docs/tutorials/core/first_application_rtos/nuttx.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ Once the command is executed, a folder named `firmware` must be present in your

This step is in charge, among other things, of downloading a set of micro-ROS apps for the specific platform you are
addressing.
In the case of NuttX, these are located [here](https://github.com/micro-ROS/nuttx_apps/tree/humble/examples).
In the case of NuttX, these are located [here](https://github.com/micro-ROS/nuttx_apps/tree/foxy/examples).
Each app is represented by a folder containing the following files:

* `app.c`: This file contains the logic of the application.
Expand All @@ -42,7 +42,7 @@ ros2 run micro_ros_setup configure_firmware.sh [APP] [OPTIONS]
```

In this tutorial, we will use a Serial transport and focus on the out-of-the-box `uros_pingpong`
application located [here](https://github.com/micro-ROS/nuttx_apps/tree/humble/examples/uros_pingpong).
application located [here](https://github.com/micro-ROS/nuttx_apps/tree/foxy/examples/uros_pingpong).
To execute this application with the chosen transport, run the configuration command above by specifying the `[APP]` parameter as below:

```bash
Expand Down Expand Up @@ -119,7 +119,7 @@ Now we have two options to configure our micro-ROS transport:
```

You can check the complete content of the `uros_pingpong` app
[here](https://github.com/micro-ROS/nuttx_apps/tree/humble/examples/uros_pingpong).
[here](https://github.com/micro-ROS/nuttx_apps/tree/foxy/examples/uros_pingpong).

{% include first_application_common/pingpong_logic.md %}

Expand Down
2 changes: 1 addition & 1 deletion _docs/tutorials/programming_rcl_rclc/service/services.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ permalink: /docs/tutorials/programming_rcl_rclc/service/

<img src="https://img.shields.io/badge/Written_for-Humble-green" style="display:inline"/> <img src="https://img.shields.io/badge/Tested_on-Rolling-green" style="display:inline"/> <img src="https://img.shields.io/badge/Tested_on-Iron-green" style="display:inline"/>

ROS 2 services are another communication mechanism between nodes. Services implement a client-server paradigm based on ROS 2 messages and types. Further information about ROS 2 services can be found [here](https://index.ros.org/doc/ros2/Tutorials/Services/Understanding-ROS2-Services/)
ROS 2 services are another communication mechanism between nodes. Services implement a client-server paradigm based on ROS 2 messages and types. Further information about ROS 2 services can be found [here](https://docs.ros.org/en/rolling/Tutorials/Beginner-CLI-Tools/Understanding-ROS2-Services/Understanding-ROS2-Services.html)

Ready to use code related to this concepts can be found in [`micro-ROS-demos/rclc/addtwoints_server`](https://github.com/micro-ROS/micro-ROS-demos/blob/humble/rclc/addtwoints_server/main.c) and [`micro-ROS-demos/rclc/addtwoints_client`](https://github.com/micro-ROS/micro-ROS-demos/blob/humble/rclc/addtwoints_client/main.c) folders. Fragments of code from this examples are used on this tutorial.

Expand Down
4 changes: 2 additions & 2 deletions _posts/2019-03-20-micro-ROS_at_ERF2019.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,15 @@ title: micro-ROS at European Robotics Forum 2019
author: borjaouterelo
---

The [European Robotics Forum](https://eu-robotics.net/eurobotics/activities/european-robotics-forum/), the most influential meeting of the robotics community in Europe, was held in Bucharest, Romania, in March 2019. Over 900 European robotics top experts attended the 10th edition of the conference.
The [European Robotics Forum](https://eu-robotics.net/european-robotics-forum/), the most influential meeting of the robotics community in Europe, was held in Bucharest, Romania, in March 2019. Over 900 European robotics top experts attended the 10th edition of the conference.

OFERA consortium, taking advantage of the opportunity, arranged one of their face-to-face meetings the days before the ERF as some of the members will also be attending to the forum.

In the forum and as part of the TG Software & System Engineering Meeting, Ingo Luetkebohle from Bosch and Borja Outerelo from eProsima presented an overview of the micro-ROS project, exposing the challenges it faces and the involvement of the community via a demo and the ROS 2 Embedded SIG.

The micro-ROS community demo was presented, making use of a Kobuki, one of the project reference platforms, Olimex STM32 E407 and micro-ROS stack. This community use case was also present in the exibitions area, as part of the Bosch booth.

## Slides
## Slides

<embed src="/download/OFERA-Presentation_ERF2019.pdf" type="application/pdf" width="100%" height="450px"/>

Expand Down
2 changes: 1 addition & 1 deletion _posts/2020-03-03-micro-ROS-at-ERF2020.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ title: micro-ROS at European Robotics Forum 2020
author: ralph-lange
---

The 11th edition of the [**European Robotics Forum (ERF)**](https://eu-robotics.net/eurobotics/activities/european-robotics-forum/) was held in Malaga, Spain from 3rd to 5th March 2020. The ERF is one of the most important events in the European robotics community and especially the place where almost all EU-funded robotics projects present their works.
The 11th edition of the [**European Robotics Forum (ERF)**](https://eu-robotics.net/european-robotics-forum/) was held in Malaga, Spain from 3rd to 5th March 2020. The ERF is one of the most important events in the European robotics community and especially the place where almost all EU-funded robotics projects present their works.

All partners of the EU project behind micro-ROS together organized a booth to display our latest developments. Most important, we showed a demo with a Kobuki platform, a Crazyflie quadcopter, and an IoT sensor running three different RTOS (NuttX, FreeRTOS, and Zephyr) supported by micro-ROS. In the front right of the following photo, you can also see our demo box to illustrate the different boot times and power consumptions of microprocessors versus microcontrollers running ROS 2 and micro-ROS, respectively.

Expand Down
4 changes: 2 additions & 2 deletions _posts/2021-04-13-ERF2021.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,11 @@ title: micro-ROS at European Robotics Forum 2021
author: JanStaschulat
---

On April 13th 2021, we presented micro-ROS at the [European Robotics Forum 2021](https://eu-robotics.net/eurobotics/activities/european-robotics-forum/) in a dedicated workshop organized by several partners of this project. First, Francesca Finoccharo (eProsima) presented in detail the micro-ROS architecture, the supported platforms, several demonstrations and reported on new features: A versatile API for custom transports, continuous fragment mode, static memory pools in the RMW and time synchronization between client and agent:
On April 13th 2021, we presented micro-ROS at the [European Robotics Forum 2021](https://eu-robotics.net/european-robotics-forum/) in a dedicated workshop organized by several partners of this project. First, Francesca Finoccharo (eProsima) presented in detail the micro-ROS architecture, the supported platforms, several demonstrations and reported on new features: A versatile API for custom transports, continuous fragment mode, static memory pools in the RMW and time synchronization between client and agent:

<embed src="/download/2021-04-13-ERF-eprosima.pdf" type="application/pdf" width="100%" height="450px"/>

Then, Jan Staschulat (Bosch) gave an overview of the RCLC API with a code example and highlighted the deterministic behavior of the RCLC Executor:
Then, Jan Staschulat (Bosch) gave an overview of the RCLC API with a code example and highlighted the deterministic behavior of the RCLC Executor:

<embed src="/download/2021-04-13-ERF-bosch.pdf" type="application/pdf" width="100%" height="450px"/>

Expand Down
Loading

0 comments on commit 93ae75a

Please sign in to comment.