You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: _docs/concepts/client_library/features/index.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -13,4 +13,4 @@ The micro-ROS Client Library, formed by standard [ROS 2 Client Support Library (
13
13
* Lifecycle
14
14
* Parameters
15
15
16
-
Most features are already available in the Foxy release. Please see our [Feature Overview page](/docs/overview/features/) for details on the status. To learn developing your own application nodes with rcl + rclc, please head to the corresponding [programming tutorial](/docs/tutorials/core/programming_rcl_rclc/).
16
+
Most features are already available in the Foxy release. Please see our [Feature Overview page](/docs/overview/features/) for details on the status. To learn developing your own application nodes with rcl + rclc, please head to the corresponding [programming tutorial](/docs/tutorials/firststeps/programming_rcl_rclc/).
Copy file name to clipboardExpand all lines: _docs/concepts/middleware/Micro_XRCE-DDS/index.md
+4-4Lines changed: 4 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -44,7 +44,7 @@ These definitions allow to create a version of the library according to the appl
44
44
For incorporating the desired configuration, it is necessary to run the `cmake` command every time the definitions change.
45
45
46
46
For more information on how to configure micro-ROS by opportunely tuning parameters either in the Micro XRCE-DDS library
47
-
orin its rmw implementation [`rmw_microxrcedds`](https://github.com/micro-ROS/rmw-microxrcedds), consult this [tutorial](/docs/tutorials/core/microxrcedds_rmw_configuration/) and the `rmw_microxrcedds`[README](https://github.com/micro-ROS/rmw-microxrcedds#rmw-micro-xrce-dds-implementation).
47
+
orin its rmw implementation [`rmw_microxrcedds`](https://github.com/micro-ROS/rmw-microxrcedds), consult this [tutorial](/docs/tutorials/advanced/microxrcedds_rmw_configuration/) and the `rmw_microxrcedds`[README](https://github.com/micro-ROS/rmw-microxrcedds#rmw-micro-xrce-dds-implementation).
48
48
49
49
### Multi-Transport Support
50
50
@@ -76,7 +76,7 @@ Additionally, using references will also reduce the memory consumption of the Cl
76
76
This is because the reference approach allows avoiding to build the parts of the code where XMLs are stored.
77
77
78
78
Notice that this mechanism is inherited by micro-ROS which, as a consequence, will be able to leverage the same full set of QoS as ROS 2.
79
-
For a comprehensive review on how to use custom QoS in micro-ROS, please visit this [dedicated page](/docs/tutorials/core/create_dds_entities_by_ref/) in the tutorials section.
79
+
For a comprehensive review on how to use custom QoS in micro-ROS, please visit this [dedicated page](/docs/tutorials/advanced/create_dds_entities_by_ref/) in the tutorials section.
80
80
81
81
82
82
## Other links
@@ -87,5 +87,5 @@ For a comprehensive review on how to use custom QoS in micro-ROS, please visit t
87
87
*[XRCE Agent on GitHub](https://github.com/eProsima/Micro-XRCE-DDS-Agent)
88
88
*[rmw_microxrcedds on GitHub](https://github.com/micro-ROS/rmw-microxrcedds)
Transport and serialization over DDS-XRCE and DDS| <spanclass="status_flag">✓+</span> | Available transports: UDP, serial (UART) and custom as enabled by [Micro XRCE-DDS](https://github.com/eProsima/Micro-XRCE-DDS). Serialization between Client and Agent provided by [Micro-CDR](https://github.com/eProsima/Micro-CDR) and between Agent to standard DDS by [Fast-CDR](https://github.com/eProsima/Fast-CDR).
47
47
Support for multiple DDS implementations, chosen at runtime | <spanclass="status_flag">✓</span> | Support via the Micro XRCE-DDS Agent is possible in principle, but at compile-time only.
48
-
Quality of service settings for handling non-ideal networks | <spanclass="status_flag">✓+</span> | For communication over the DDS-XRCE wire protocol, two QoS semantics, reliable and best-effort, are provided and can be set at compile-time. As for communication with the ROS 2 dataspace, micro-ROS entities can benefit from the whole set of QoS allowed by DDS when created [by Reference](https://micro-ros.github.io/docs/tutorials/core/create_dds_entities_by_ref/).
48
+
Quality of service settings for handling non-ideal networks | <spanclass="status_flag">✓+</span> | For communication over the DDS-XRCE wire protocol, two QoS semantics, reliable and best-effort, are provided and can be set at compile-time. As for communication with the ROS 2 dataspace, micro-ROS entities can benefit from the whole set of QoS allowed by DDS when created [by Reference](https://micro-ros.github.io/docs/tutorials/advanced/create_dds_entities_by_ref/).
49
49
DDS-Security support | <spanclass="status_flag">✓-</span> | Security is not yet supported in the communication process between the Client and the Agent. However, the micro-ROS Agent can benefit from Fast DDS security capabilities during the creation of DDS entities. *Roadmap: Implementation of security mechanisms in Micro XRCE-DDS are planned for future releases.*
50
50
IDL | <spanclass="status_flag">✓+</span> | micro-ROS supports the same IDL types as ROS 2. Generation of C code from IDLs as handled by the Client is performed by the [Micro-XRCE-DDS-Gen](https://github.com/eProsima/Micro-XRCE-DDS-Gen) library, whereas generation of the C++ types handled by the Agent is handled by [Fast-DDS-Gen](https://github.com/eProsima/Fast-DDS-Gen).
51
51
Logging | <spanclass="status_flag">∗</span> | *Could be available as part of the standard logging mechanism in principle but not supported by Micro-XRCE-DDS due to dynamic message size. To be checked ...*
Micro-ROS aims to **bring ROS 2 to a wide set of microcontrollers** to allow having first-class ROS 2 entities in the embedded world.
32
32
33
-
The main targets of micro-ROS are mid-range 32-bits microcontroller families. Usually, the minimum requirements for running micro-ROS in an embedded platform are memory constraints. Since memory usage in micro-ROS is a complex matter we provide a [complete article](https://micro-ros.github.io/docs/concepts/benchmarking/memo_prof/) describing it and a tutorial on [how to tune the memory consuption](https://micro-ros.github.io/docs/tutorials/core/microxrcedds_rmw_configuration/) in the micro-ROS middleware.
33
+
The main targets of micro-ROS are mid-range 32-bits microcontroller families. Usually, the minimum requirements for running micro-ROS in an embedded platform are memory constraints. Since memory usage in micro-ROS is a complex matter we provide a [complete article](https://micro-ros.github.io/docs/concepts/benchmarking/memo_prof/) describing it and a tutorial on [how to tune the memory consuption](https://micro-ros.github.io/docs/tutorials/advanced/microxrcedds_rmw_configuration/) in the micro-ROS middleware.
34
34
35
35
In general micro-ROS will need MCUs that have tens of kilobytes of RAM memory and communication peripherals that enable the micro-ROS [Client to Agent communication](https://micro-ros.github.io//docs/overview/features/).
Copy file name to clipboardExpand all lines: _docs/overview/rtos/index.md
+4-4Lines changed: 4 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -37,7 +37,7 @@ Even though recent developments aim at loosening this requirement, with the inte
37
37
To date, micro-ROS is supported by the RTOSes FreeRTOS, Zephyr, NuttX, in addition to Linux and Windows.
38
38
All three RTOSes are downloaded natively with the [micro-ROS build system](https://github.com/micro-ROS/micro_ros_setup), and can be chosen when creating
39
39
a new firmware workspace.
40
-
Dedicated tutorials for running your first micro-ROS application on each of these Operating Systems can be found [here](https://micro-ros.github.io/docs/tutorials/core/first_application_rtos/).
40
+
Dedicated tutorials for running your first micro-ROS application on each of these Operating Systems can be found [here](https://micro-ros.github.io/docs/tutorials/firststeps/first_application_rtos/).
41
41
The features common to all supported RTOSes are an API compliant with POSIX to some degree, extremely low-to-low memory footprint, and availability of different scheduling algorithms to ensure determinism in micro-ROS apps behavior.
42
42
43
43
Find more details about each of the supported RTOSes below.
@@ -72,7 +72,7 @@ FreeRTOS is distributed under the MIT license. It is known particularly for its
72
72
<b>FreeRTOS & micro-ROS:</b>
73
73
<ul>
74
74
<li><a href="https://www.freertos.org/2020/09/micro-ros-on-freertos.html">micro-ROS on FreeRTOS</a></li>
75
-
<li><a href="https://micro-ros.github.io/docs/tutorials/core/first_application_rtos/freertos/">First micro-ROS Application on FreeRTOS</a></li>
75
+
<li><a href="https://micro-ros.github.io/docs/tutorials/firststeps/first_application_rtos/freertos/">First micro-ROS Application on FreeRTOS</a></li>
76
76
</ul>
77
77
</div>
78
78
</div>
@@ -109,7 +109,7 @@ Zephyr is a fairly new open-source RTOS, developed in a Linux Foundation Project
109
109
<b>Zephyr & micro-ROS:</b>
110
110
<ul>
111
111
<li><a href="https://www.zephyrproject.org/micro-ros-a-member-of-the-zephyr-project-and-integrated-into-the-zephyr-build-system-as-a-module/">micro-ROS on Zephyr</a></li>
112
-
<li><a href="https://micro-ros.github.io/docs/tutorials/core/first_application_rtos/zephyr/">First micro-ROS Application on Zephyr</a></li>
112
+
<li><a href="https://micro-ros.github.io/docs/tutorials/firststeps/first_application_rtos/zephyr/">First micro-ROS Application on Zephyr</a></li>
113
113
<li><a href="https://micro-ros.github.io/docs/tutorials/advanced/zephyr_emulator/">First micro-ROS Application on Zephyr Emulator</a></li>
114
114
</ul>
115
115
</div>
@@ -142,7 +142,7 @@ NuttX emphasizes its compliance with standards - including POSIX - and small foo
142
142
</ul>
143
143
<b>NuttX & micro-ROS:</b>
144
144
<ul>
145
-
<li><a href="https://micro-ros.github.io/docs/tutorials/core/first_application_rtos/nuttx/">First micro-ROS Application on NuttX</a></li>
145
+
<li><a href="https://micro-ros.github.io/docs/tutorials/firststeps/first_application_rtos/nuttx/">First micro-ROS Application on NuttX</a></li>
Copy file name to clipboardExpand all lines: _docs/tutorials/advanced/create_dds_entities_by_ref/index.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -68,7 +68,7 @@ But these QoS configurations may not fit some user's requirements. For these cas
68
68
Additionally, using references will also reduce the memory consumption of the micro-ROS client inside the MCU. This is because the parts of the code where XML are handled are just not build with the references approach.
69
69
70
70
Let's see how to create a micro-ROS node that creates entities with custom QoS. First of all, independently of which RTOS you have selected in [First micro-ROS Application on an RTOS
71
-
](https://micro-ros.github.io/docs/tutorials/core/first_application_rtos/) tutorial, you should have an app configuration file named `app-colcon.meta`.
71
+
](https://micro-ros.github.io/docs/tutorials/firststeps/first_application_rtos/) tutorial, you should have an app configuration file named `app-colcon.meta`.
72
72
73
73
Inside this `app-colcon.meta` file we can set application specific CMake options for the micro-ROS packages that are going to be crosscompiled. So, let's setup the `rmw_microxrcedds` in order to use references; your `app-colcon.meta` should look like this:
74
74
@@ -86,7 +86,7 @@ Inside this `app-colcon.meta` file we can set application specific CMake options
86
86
}
87
87
```
88
88
89
-
Of course you can combine these configurations with others, e.g. the ones described in the [Middleware Configuration](https://micro-ros.github.io/docs/tutorials/core/microxrcedds_rmw_configuration/) tutorial.
89
+
Of course you can combine these configurations with others, e.g. the ones described in the [Middleware Configuration](https://micro-ros.github.io/docs/tutorials/advanced/microxrcedds_rmw_configuration/) tutorial.
90
90
91
91
Once you have this parameter, write your micro-ROS application using RCLC default convenience functions. Just remember that now you are not providing the topic name but a "QoS reference label":
Copy file name to clipboardExpand all lines: _docs/tutorials/advanced/microxrcedds_rmw_configuration/index.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -59,7 +59,7 @@ The rmw-microxrcedds uses a static-memory message queue where to to keep the sub
59
59
The size of this message queue could be set by the `RMW_UXRCE_MAX_HISTORY`.
60
60
61
61
It is worth noting that all the aforementioned CMake flags shall be set in a `.meta` for each platform supported in [micro_ros_setup](https://github.com/micro-ROS/micro_ros_setup).
62
-
For example, in the [ping-pong application](https://micro-ros.github.io//docs/tutorials/core/first_application_linux/) the host [configuration file](https://github.com/micro-ROS/micro_ros_setup/blob/foxy/config/host/generic/client-host-colcon.meta) can be optimized with the following modifications:
62
+
For example, in the [ping-pong application](https://micro-ros.github.io//docs/tutorials/firststeps/first_application_linux/) the host [configuration file](https://github.com/micro-ROS/micro_ros_setup/blob/foxy/config/host/generic/client-host-colcon.meta) can be optimized with the following modifications:
In this tutorial, we will see how to set a basic Micro-ROS configuration for NuttX over serial communication. Since this guide is only focused on setting the configuration, you should check the tutorial linked here before: [First micro-ROS Application on an RTOS](https://micro-ros.github.io/docs/tutorials/core/first_application_rtos/)
12
+
In this tutorial, we will see how to set a basic Micro-ROS configuration for NuttX over serial communication. Since this guide is only focused on setting the configuration, you should check the tutorial linked here before: [First micro-ROS Application on an RTOS](https://micro-ros.github.io/docs/tutorials/firststeps/first_application_rtos/)
13
13
14
14
**Disclamer**
15
15
@@ -76,7 +76,7 @@ make menuconfig
76
76
The menu below should appear:
77
77

78
78
79
-
Note: Remember that you should follow this previous tutorial before starting it. [First micro-ROS Application on an RTOS](https://micro-ros.github.io/docs/tutorials/core/first_application_rtos/)
79
+
Note: Remember that you should follow this previous tutorial before starting it. [First micro-ROS Application on an RTOS](https://micro-ros.github.io/docs/tutorials/firststeps/first_application_rtos/)
80
80
81
81
In the menu, you need to set the following configuration.
0 commit comments