Skip to content

Commit 15d99f2

Browse files
authored
Release G.5.1 / H.2.1 (#420)
* Add G.5.1, H.2.1, and associated features * Update admonitions for beta features * Move "beta" admonition on pages with images * Add example middleware profiles from robot * Add example topic values to hazards
1 parent bef30f8 commit 15d99f2

15 files changed

+358
-27
lines changed

Diff for: docs/api/hazards.md

+169-1
Original file line numberDiff line numberDiff line change
@@ -21,23 +21,191 @@ In particular the timestamp will denote when the robot detected the hazard and t
2121
!!! important
2222
The `hazard_detection` topic will also contain a `BACKUP_LIMIT` hazard if the robot safety features are preventing it from safely moving further backwards. Look at the [safety documentation](safety.md) for details and how to disable it.
2323

24+
??? example
25+
No hazards:
26+
```
27+
header:
28+
stamp:
29+
sec: 1688673217
30+
nanosec: 973425138
31+
frame_id: base_link
32+
detections: []
33+
```
34+
35+
Many hazards:
36+
```
37+
header:
38+
stamp:
39+
sec: 1688673239
40+
nanosec: 782492541
41+
frame_id: base_link
42+
detections:
43+
- header:
44+
stamp:
45+
sec: 1688673239
46+
nanosec: 782576914
47+
frame_id: cliff_side_left
48+
type: 2
49+
- header:
50+
stamp:
51+
sec: 1688673239
52+
nanosec: 782576914
53+
frame_id: cliff_front_left
54+
type: 2
55+
- header:
56+
stamp:
57+
sec: 1688673239
58+
nanosec: 782576914
59+
frame_id: cliff_front_right
60+
type: 2
61+
- header:
62+
stamp:
63+
sec: 1688673239
64+
nanosec: 782576914
65+
frame_id: cliff_side_right
66+
type: 2
67+
- header:
68+
stamp:
69+
sec: 1688673239
70+
nanosec: 781947051
71+
frame_id: left_wheel
72+
type: 3
73+
- header:
74+
stamp:
75+
sec: 1688673239
76+
nanosec: 781947051
77+
frame_id: right_wheel
78+
type: 3
79+
- header:
80+
stamp:
81+
sec: 1688673239
82+
nanosec: 782576914
83+
frame_id: base_link
84+
type: 0
85+
```
86+
2487
### The `kidnap_status` topic
2588

2689
By "kidnap" we denote the action of manually lifting the robot and, eventually, placing it back in a location which may be different from the original one.
2790

2891
The Create® 3 robot combines together different sensors data in order to determine when it's being kidnapped.
2992
A boolean status will be periodically published on the `kidnap_status` topic.
3093

94+
??? example
95+
```
96+
header:
97+
stamp:
98+
sec: 1688672489
99+
nanosec: 526097022
100+
frame_id: base_link
101+
is_kidnapped: false
102+
```
31103

32104
### The `ir_intensity` topic
33105

34-
Besides the aforementioned sensors, the Create® 3 robot is also equipped with [7 sets of IR emitters and receivers](/hw/mechanical/#ir-proximity-sensors) and it can use them to detect objects at close range.
106+
[7 sets of IR emitters and receivers](/hw/mechanical/#ir-proximity-sensors) are available in the front bumper to detect objects at close range.
35107

36108
The Create® 3 robot will periodically publish on the `ir_intensity` topic the raw intensity readings obtained from these sensors.
37109
The message will be a vector where each element corresponds to a different sensor.
38110
The higher the intensity value is, the closer an obstacle is to the robot.
39111
The `header` field of each indivdual detection will provide all the information required to localize it.
40112
In particular the timestamp will denote when the robot detected the hazard and the frame id will denote the location of the sensor that performed the detection.
41113

114+
??? example
115+
```
116+
header:
117+
stamp:
118+
sec: 1688673736
119+
nanosec: 121692158
120+
frame_id: base_link
121+
readings:
122+
- header:
123+
stamp:
124+
sec: 1688673736
125+
nanosec: 121692158
126+
frame_id: ir_intensity_side_left
127+
value: 0
128+
- header:
129+
stamp:
130+
sec: 1688673736
131+
nanosec: 121692158
132+
frame_id: ir_intensity_left
133+
value: 0
134+
- header:
135+
stamp:
136+
sec: 1688673736
137+
nanosec: 121692158
138+
frame_id: ir_intensity_front_left
139+
value: 0
140+
- header:
141+
stamp:
142+
sec: 1688673736
143+
nanosec: 121692158
144+
frame_id: ir_intensity_front_center_left
145+
value: 0
146+
- header:
147+
stamp:
148+
sec: 1688673736
149+
nanosec: 121692158
150+
frame_id: ir_intensity_front_center_right
151+
value: 5
152+
- header:
153+
stamp:
154+
sec: 1688673736
155+
nanosec: 121692158
156+
frame_id: ir_intensity_front_right
157+
value: 0
158+
- header:
159+
stamp:
160+
sec: 1688673736
161+
nanosec: 121692158
162+
frame_id: ir_intensity_right
163+
value: 3
164+
```
165+
166+
### The `cliff_intensity` topic
167+
168+
[4 sets of IR emitters and receivers](/hw/mechanical/#bottom-view) are available in on the bottom of the robot just behind its front bumper to detect presence or absence of the floor.
169+
170+
The Create® 3 robot will periodically publish on the `cliff_intensity` topic the raw intensity readings obtained from these sensors.
171+
The message will be a vector where each element corresponds to a different sensor.
172+
The higher the intensity value is, the more intensely the floor is perceived.
173+
The `header` field of each indivdual detection will provide all the information required to localize it.
174+
In particular the timestamp will denote the time of the reading and the frame id will denote the location of the sensor that performed the detection.
175+
176+
??? example
177+
```
178+
header:
179+
stamp:
180+
sec: 1688672489
181+
nanosec: 986327471
182+
frame_id: base_link
183+
readings:
184+
- header:
185+
stamp:
186+
sec: 1688672489
187+
nanosec: 986327471
188+
frame_id: cliff_side_left
189+
value: 2207
190+
- header:
191+
stamp:
192+
sec: 1688672489
193+
nanosec: 986327471
194+
frame_id: cliff_front_left
195+
value: 2235
196+
- header:
197+
stamp:
198+
sec: 1688672489
199+
nanosec: 986327471
200+
frame_id: cliff_front_right
201+
value: 2206
202+
- header:
203+
stamp:
204+
sec: 1688672489
205+
nanosec: 986327471
206+
frame_id: cliff_side_right
207+
value: 2187
208+
```
209+
42210
[^1]: ROS 2 is governed by Open Robotics
43211
[^2]: All trademarks mentioned are the property of their respective owners.

Diff for: docs/api/ros2.md

+1
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ You can see the ROS 2 topics exposed by the Create® 3 robot running the `ros2 t
1313
```bash
1414
$ ros2 topic list -t
1515
/battery_state [sensor_msgs/msg/BatteryState]
16+
/cliff_intensity [irobot_create_msgs/msg/IrIntensityVector]
1617
/cmd_audio [irobot_create_msgs/msg/AudioNoteVector]
1718
/cmd_lightring [irobot_create_msgs/msg/LightringLeds]
1819
/cmd_vel [geometry_msgs/msg/Twist]

Diff for: docs/releases/g_5_1.md

+34
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
# iRobot® Create® 3 Release G.5.1
2+
[[Click here to download release G.5.1]](https://edu.irobot.com/create3/firmware/G.5.1)
3+
4+
## This release is running ROS 2 Galactic with the following interface library versions:
5+
6+
- [irobot_create_msgs - 1.2.4](https://github.com/iRobotEducation/irobot_create_msgs/tree/1.2.4)
7+
- [cyclonedds - 0.8.1](https://github.com/eclipse-cyclonedds/cyclonedds/tree/0.8.1)
8+
- [Fast-DDS - 2.3.3](https://github.com/eProsima/Fast-DDS/tree/2.3.3)
9+
10+
## Release Overview
11+
For iRobot® Education Bluetooth[^1] users, this is a bugfix release.
12+
For ROS 2[^2] users, this is primarily a feature release.
13+
See below for details.
14+
15+
## Changelog (from G.4.5)
16+
### ROS 2
17+
* Publications
18+
* Add `/cliff_intensity` topic [(#320)](https://github.com/iRobotEducation/create3_docs/issues/320)
19+
* Add tf frame for the IMU (called `imu`), to which the `/imu` topic is now connected
20+
* Middleware
21+
* Allow the use of `;` characters in Fast-DDS Discovery Server configuration [(#400)](https://github.com/iRobotEducation/create3_docs/issues/400)
22+
* Beta: Allow user to [provide an XML configuration file](../../webserver/rmw-profile-override/) for their preferred middleware [(#407)](https://github.com/iRobotEducation/create3_docs/issues/407)
23+
24+
### Core Robot
25+
* Webserver / OS
26+
* Beta: Allow user full control to [edit ntp.conf](../../webserver/edit-ntp-conf/) [(#333)](https://github.com/iRobotEducation/create3_docs/issues/333)
27+
* Remove erroneous log messages about the robot's lost Wi-Fi connection when it had never been connected in the first place
28+
29+
### iRobot® Education Bluetooth protocol mode
30+
* Fix device number for stall event to match protocol document [(#410)](https://github.com/iRobotEducation/create3_docs/issues/410)
31+
32+
[^1]: The Bluetooth® word mark and logos are registered trademarks owned by Bluetooth SIG, Inc. and any use of such marks by iRobot is under license.
33+
[^2]: ROS 2 is governed by Open Robotics.
34+
[^3]: All other trademarks mentioned are the property of their respective owners.

Diff for: docs/releases/h_2_1.md

+37
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# iRobot® Create® 3 Release H.2.1
2+
[[Click here to download release H.2.1]](https://edu.irobot.com/create3/firmware/H.2.1)
3+
4+
!!! warning
5+
When using Fast-DDS, startup times are about 30s longer than in our Galactic release. We are working on a fix.
6+
7+
## This release is running ROS 2 Humble with the following interface library versions:
8+
9+
- [irobot_create_msgs - 2.1.0](https://github.com/iRobotEducation/irobot_create_msgs/tree/2.1.0)
10+
- [cyclonedds - 0.9.0](https://github.com/eclipse-cyclonedds/cyclonedds/tree/0.9.0)
11+
- [Fast-DDS - 2.6.4](https://github.com/eProsima/Fast-DDS/tree/2.6.4)
12+
13+
## Release Overview
14+
For iRobot® Education Bluetooth[^1] users, this is a bugfix release.
15+
For ROS 2[^2] users, this is primarily a feature release.
16+
See below for details.
17+
18+
## Changelog (from H.1.2)
19+
### ROS 2
20+
* Publications
21+
* Add `/cliff_intensity` topic [(#320)](https://github.com/iRobotEducation/create3_docs/issues/320)
22+
* Add tf frame for the IMU (called `imu`), to which the `/imu` topic is now connected
23+
* Middleware
24+
* Allow the use of `;` characters in Fast-DDS Discovery Server configuration [(#400)](https://github.com/iRobotEducation/create3_docs/issues/400)
25+
* Beta: Allow user to [provide an XML configuration file](../../webserver/rmw-profile-override/) for their preferred middleware [(#407)](https://github.com/iRobotEducation/create3_docs/issues/407)
26+
27+
### Core Robot
28+
* Webserver / OS
29+
* Beta: Allow user full control to [edit ntp.conf](../../webserver/edit-ntp-conf/) [(#333)](https://github.com/iRobotEducation/create3_docs/issues/333)
30+
* Remove erroneous log messages about the robot's lost Wi-Fi connection when it had never been connected in the first place
31+
32+
### iRobot® Education Bluetooth protocol mode
33+
* Fix device number for stall event to match protocol document [(#410)](https://github.com/iRobotEducation/create3_docs/issues/410)
34+
35+
[^1]: ROS 2 is governed by Open Robotics.
36+
[^2]: The Bluetooth® word mark and logos are registered trademarks owned by Bluetooth SIG, Inc. and any use of such marks by iRobot is under license.
37+
[^3]: All other trademarks mentioned are the property of their respective owners.

Diff for: docs/releases/overview.md

+4-2
Original file line numberDiff line numberDiff line change
@@ -33,13 +33,15 @@ Downloads of a particular version can be found on each individual release page.
3333

3434
### Humble
3535

36-
* [H.1.2](../h_1_2) (humble-latest)
36+
* [H.2.1](../h_2_1) (humble-latest)
37+
* [H.1.2](../h_1_2)
3738
* [H.1.1](../h_1_1)
3839
* [H.1.0](../h_1_0)
3940
* [H.0.0](../h_0_0)
4041

4142
### Galactic
42-
* [G.4.5](../g_4_5) (galactic-latest, latest)
43+
* [G.5.1](../g_5_1) (galactic-latest, latest)
44+
* [G.4.5](../g_4_5)
4345
* [G.4.4](../g_4_4)
4446
* [G.4.3](../g_4_3)
4547
* [G.4.1](../g_4_1)

Diff for: docs/webserver/data/edit-ntp-conf.png

103 KB
Loading

Diff for: docs/webserver/data/rmw-profile-override.png

104 KB
Loading

Diff for: docs/webserver/edit-ntp-conf.md

+12
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
# iRobot® Create® 3 Webserver - Edit ntp.conf
2+
The Edit ntp.conf page of the Create® 3 webserver allows the user to modify the robot's NTP daemon configuration file.
3+
4+
!!!warning
5+
Please note that this is a beta feature, and as such is not supported by the customer service team.
6+
Please exercise caution, as improper use of beta features may result in an inoperable robot.
7+
8+
![Picture of edit ntp.conf page](data/edit-ntp-conf.png)
9+
10+
This page allows the user to directly edit `ntp.conf` on the robot. After pressing "save," the NTP daemon must be [restarted](../webserver/restart-ntpd.md).
11+
12+
[^1]: All trademarks mentioned are the property of their respective owners.

Diff for: docs/webserver/overview.md

+5
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,11 @@ Please use the menu to navigate between sections of the webserver, or else navig
2222
- [Application](../webserver/application.md)
2323
- Beta Features
2424
- [Serial Forwarder](../webserver/serial-config.md)
25+
- [Set Date and Time](../webserver/set-datetime.md)
26+
- [Edit ntp.conf](../webserver/edit-ntp-conf.md)
27+
- [Restart ntpd](../webserver/restart-ntpd.md)
28+
- [Set Wired Subnet](../webserver/set-wired-subnet.md)
29+
- [Override RMW Profile](../webserver/rmw-profile-override.md)
2530
- [About](../webserver/about.md)
2631

2732
[^1]: ROS 2 is governed by Open Robotics

Diff for: docs/webserver/restart-ntpd.md

+3-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
# iRobot® Create® 3 Webserver - Restart ntpd
22
The "Restart ntpd" beta menu option of the Create® 3 webserver instructs the Create® 3 robot to resynchronize its clock.
33

4-
Please note that this is a beta feature, and as such is not supported by the customer service team.
5-
Please exercise caution, as improper use of beta features may result in an inoperable robot.
4+
!!!warning
5+
Please note that this is a beta feature, and as such is not supported by the customer service team.
6+
Please exercise caution, as improper use of beta features may result in an inoperable robot.
67

78
Selecting the "Restart ntpd" option will spawn a pop-up requesting confirmation.
89
Restarting the ntp daemon will trigger a time resynchronization with the first time server found.

Diff for: docs/webserver/rmw-profile-override.md

+58
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
# iRobot® Create® 3 Webserver - Override RMW Profile
2+
The Override RMW Profile page of the Create® 3 webserver allows the user to override the robot's inbuilt RMW profiles for its middleware.
3+
4+
!!!warning
5+
Please note that this is a beta feature, and as such is not supported by the customer service team.
6+
Please exercise caution, as improper use of beta features may result in an inoperable robot.
7+
8+
![Picture of Override RMW Profile page](data/rmw-profile-override.png)<br><br>
9+
10+
## Usage
11+
This page allows the user to replace the robot's middleware XML profile file with one of their choosing.
12+
Leave this box blank in order to use the robot's default profile file.
13+
14+
!!!important
15+
After pressing "save," the application must be [restarted](../application/#restart-application).
16+
17+
More details about the XML configuration file can be found on respective vendor sites:
18+
19+
* [Cyclone DDS](https://github.com/eclipse-cyclonedds/cyclonedds/blob/master/docs/manual/options.md)
20+
* [Fast DDS](https://fast-dds.docs.eprosima.com/en/latest/fastdds/xml_configuration/xml_configuration.html)
21+
22+
## Example for Cyclone DDS
23+
Replace `INTERFACE` with interface(s) of choice (for example, `usb0,wlan0` to communicate on both the USB and Wi-Fi interfaces)
24+
25+
```xml
26+
<CycloneDDS>
27+
<Domain>
28+
<General>
29+
<NetworkInterfaceAddress>INTERFACE</NetworkInterfaceAddress>
30+
</General>
31+
</Domain>
32+
</CycloneDDS>
33+
```
34+
35+
## Example for Fast DDS
36+
```xml
37+
<?xml version="1.0" encoding="UTF-8" ?>
38+
<profiles xmlns="http://www.eprosima.com/XMLSchemas/fastRTPS_Profiles">
39+
<transport_descriptors>
40+
<transport_descriptor>
41+
<transport_id>udp_transport</transport_id>
42+
<type>UDPv4</type>
43+
<maxMessageSize>65000</maxMessageSize>
44+
</transport_descriptor>
45+
</transport_descriptors>
46+
47+
<participant profile_name="broadcast_discovery" is_default_profile="true">
48+
<rtps>
49+
<userTransports>
50+
<transport_id>udp_transport</transport_id>
51+
</userTransports>
52+
<useBuiltinTransports>false</useBuiltinTransports>
53+
</rtps>
54+
</participant>
55+
</profiles>
56+
```
57+
58+
[^1]: All trademarks mentioned are the property of their respective owners.

0 commit comments

Comments
 (0)