Skip to content

Commit 29d7655

Browse files
authored
Update to external transport API (#269)
* Initial * Update * Add metas atomic * Add Zephyr * Update zephyr * Revert branches Revert branches
1 parent 47e63d9 commit 29d7655

16 files changed

Lines changed: 77 additions & 191 deletions

File tree

config/freertos/crazyflie21/configure.sh

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,10 @@ EXTENSIONS_DIR=$FW_TARGETDIR/freertos_apps/microros_crazyflie21_extensions
55

66
echo $CONFIG_NAME > $FW_TARGETDIR/APP
77

8-
cp -f $EXTENSIONS_DIR/src/crazyflie_transport.c $FW_TARGETDIR/mcu_ws/eProsima/Micro-XRCE-DDS-Client/src/c/profile/transport/serial/serial_transport_external.c
9-
cp -f $EXTENSIONS_DIR/src/crazyflie_transport.h $FW_TARGETDIR/mcu_ws/eProsima/Micro-XRCE-DDS-Client/include/uxr/client/profile/transport/serial/serial_transport_external.h
10-
update_meta "microxrcedds_client" "UCLIENT_EXTERNAL_SERIAL=ON"
8+
update_meta "microxrcedds_client" "UCLIENT_PROFILE_CUSTOM_TRANSPORT=ON"
9+
update_meta "microxrcedds_client" "UCLIENT_PROFILE_STREAM_FRAMING=ON"
10+
update_meta "microxrcedds_client" "UCLIENT_PROFILE_SERIAL=OFF"
11+
update_meta "microxrcedds_client" "UCLIENT_PROFILE_UDP=OFF"
12+
update_meta "microxrcedds_client" "UCLIENT_PROFILE_TCP=OFF"
13+
14+
update_meta "rmw_microxrcedds" "RMW_UXRCE_TRANSPORT=custom"

config/freertos/esp32/configure.sh

Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -14,26 +14,25 @@ function help {
1414
echo $CONFIG_NAME > $FW_TARGETDIR/APP
1515

1616
if [ "$UROS_TRANSPORT" == "serial" ]; then
17-
if [ "$UROS_AGENT_DEVICE" -gt 2 ]; then
18-
echo ESP32 only supports USART0, USART1 or USART2
19-
exit 1
20-
fi
17+
# if [ "$UROS_AGENT_DEVICE" -gt 2 ]; then
18+
# echo ESP32 only supports USART0, USART1 or USART2
19+
# exit 1
20+
# fi
2121

22-
echo "Using serial device USART$UROS_AGENT_DEVICE."
22+
echo "Using serial device USART."
2323

24-
cp -f $EXTENSIONS_DIR/serial_transport_external/esp32_serial_transport.c $FW_TARGETDIR/mcu_ws/eProsima/Micro-XRCE-DDS-Client/src/c/profile/transport/serial/serial_transport_external.c
25-
cp -f $EXTENSIONS_DIR/serial_transport_external/esp32_serial_transport.h $FW_TARGETDIR/mcu_ws/eProsima/Micro-XRCE-DDS-Client/include/uxr/client/profile/transport/serial/serial_transport_external.h
26-
update_meta "microxrcedds_client" "UCLIENT_EXTERNAL_SERIAL=ON"
27-
update_meta "microxrcedds_client" "UCLIENT_PROFILE_SERIAL=ON"
24+
update_meta "microxrcedds_client" "UCLIENT_PROFILE_CUSTOM_TRANSPORT=ON"
25+
update_meta "microxrcedds_client" "UCLIENT_PROFILE_STREAM_FRAMING=ON"
26+
update_meta "microxrcedds_client" "UCLIENT_PROFILE_SERIAL=OFF"
2827
update_meta "microxrcedds_client" "UCLIENT_PROFILE_UDP=OFF"
2928
update_meta "microxrcedds_client" "UCLIENT_PROFILE_TCP=OFF"
3029

31-
update_meta "rmw_microxrcedds" "RMW_UXRCE_TRANSPORT=custom_serial"
32-
update_meta "rmw_microxrcedds" "RMW_UXRCE_DEFAULT_SERIAL_DEVICE="$UROS_AGENT_DEVICE
30+
update_meta "rmw_microxrcedds" "RMW_UXRCE_TRANSPORT=custom"
3331

3432
remove_meta "rmw_microxrcedds" "RMW_UXRCE_DEFAULT_UDP_IP"
3533
remove_meta "rmw_microxrcedds" "RMW_UXRCE_DEFAULT_UDP_PORT"
3634

35+
echo "Configured $UROS_TRANSPORT mode with agent at USART"
3736

3837
elif [ "$UROS_TRANSPORT" == "udp" ]; then
3938

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
repositories:
22
freertos_apps:
33
type: git
4-
url: https://github.com/micro-ros/freertos_apps
4+
url: https://github.com/micro-ROS/freertos_apps
55
version: foxy

config/freertos/nucleo_f446re/configure.sh

Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -11,23 +11,20 @@ function help {
1111
echo $CONFIG_NAME > $FW_TARGETDIR/APP
1212
# TODO add USB-OTG support
1313
if [ "$UROS_TRANSPORT" == "serial" ]; then
14-
echo "Using serial device USART$UROS_AGENT_DEVICE."
14+
echo "Using serial device USART."
1515

16-
cp -f $EXTENSIONS_DIR/uros_transport/stm32f446re_serial_transport.c $FW_TARGETDIR/mcu_ws/eProsima/Micro-XRCE-DDS-Client/src/c/profile/transport/serial/serial_transport_external.c
17-
cp -f $EXTENSIONS_DIR/uros_transport/stm32f446re_serial_transport.h $FW_TARGETDIR/mcu_ws/eProsima/Micro-XRCE-DDS-Client/include/uxr/client/profile/transport/serial/serial_transport_external.h
18-
update_meta "microxrcedds_client" "UCLIENT_EXTERNAL_SERIAL=ON"
19-
update_meta "microxrcedds_client" "UCLIENT_PROFILE_SERIAL=ON"
16+
update_meta "microxrcedds_client" "UCLIENT_PROFILE_CUSTOM_TRANSPORT=ON"
17+
update_meta "microxrcedds_client" "UCLIENT_PROFILE_STREAM_FRAMING=ON"
18+
update_meta "microxrcedds_client" "UCLIENT_PROFILE_SERIAL=OFF"
2019
update_meta "microxrcedds_client" "UCLIENT_PROFILE_UDP=OFF"
2120
update_meta "microxrcedds_client" "UCLIENT_PROFILE_TCP=OFF"
22-
23-
update_meta "rmw_microxrcedds" "RMW_UXRCE_TRANSPORT=custom_serial"
24-
update_meta "rmw_microxrcedds" "RMW_UXRCE_DEFAULT_SERIAL_DEVICE="$UROS_AGENT_DEVICE
21+
22+
update_meta "rmw_microxrcedds" "RMW_UXRCE_TRANSPORT=custom"
2523

2624
remove_meta "rmw_microxrcedds" "RMW_UXRCE_DEFAULT_UDP_IP"
2725
remove_meta "rmw_microxrcedds" "RMW_UXRCE_DEFAULT_UDP_PORT"
2826

29-
echo "Configured $UROS_TRANSPORT mode with agent at USART$UROS_AGENT_DEVICE"
30-
27+
echo "Configured $UROS_TRANSPORT mode with agent at USART"
3128
else
3229
help
3330
fi
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
repositories:
22
freertos_apps:
33
type: git
4-
url: https://github.com/micro-ros/freertos_apps
4+
url: https://github.com/micro-ROS/freertos_apps
55
version: foxy

config/freertos/nucleo_f446ze/configure.sh

Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -12,23 +12,20 @@ function help {
1212
echo $CONFIG_NAME > $FW_TARGETDIR/APP
1313
# TODO add USB-OTG support
1414
if [ "$UROS_TRANSPORT" == "serial" ]; then
15-
echo "Using serial device USART$UROS_AGENT_DEVICE."
15+
echo "Using serial device USART."
1616

17-
cp -f $EXTENSIONS_DIR/uros_transport/stm32f446ze_serial_transport.c $FW_TARGETDIR/mcu_ws/eProsima/Micro-XRCE-DDS-Client/src/c/profile/transport/serial/serial_transport_external.c
18-
cp -f $EXTENSIONS_DIR/uros_transport/stm32f446ze_serial_transport.h $FW_TARGETDIR/mcu_ws/eProsima/Micro-XRCE-DDS-Client/include/uxr/client/profile/transport/serial/serial_transport_external.h
19-
update_meta "microxrcedds_client" "UCLIENT_EXTERNAL_SERIAL=ON"
20-
update_meta "microxrcedds_client" "UCLIENT_PROFILE_SERIAL=ON"
17+
update_meta "microxrcedds_client" "UCLIENT_PROFILE_CUSTOM_TRANSPORT=ON"
18+
update_meta "microxrcedds_client" "UCLIENT_PROFILE_STREAM_FRAMING=ON"
19+
update_meta "microxrcedds_client" "UCLIENT_PROFILE_SERIAL=OFF"
2120
update_meta "microxrcedds_client" "UCLIENT_PROFILE_UDP=OFF"
2221
update_meta "microxrcedds_client" "UCLIENT_PROFILE_TCP=OFF"
23-
24-
update_meta "rmw_microxrcedds" "RMW_UXRCE_TRANSPORT=custom_serial"
25-
update_meta "rmw_microxrcedds" "RMW_UXRCE_DEFAULT_SERIAL_DEVICE="$UROS_AGENT_DEVICE
22+
23+
update_meta "rmw_microxrcedds" "RMW_UXRCE_TRANSPORT=custom"
2624

2725
remove_meta "rmw_microxrcedds" "RMW_UXRCE_DEFAULT_UDP_IP"
2826
remove_meta "rmw_microxrcedds" "RMW_UXRCE_DEFAULT_UDP_PORT"
2927

30-
echo "Configured $UROS_TRANSPORT mode with agent at USART$UROS_AGENT_DEVICE"
31-
28+
echo "Configured $UROS_TRANSPORT mode with agent at USART"
3229
else
3330
help
3431
fi
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
repositories:
22
freertos_apps:
33
type: git
4-
url: https://github.com/micro-ros/freertos_apps
4+
url: https://github.com/micro-ROS/freertos_apps
55
version: foxy

config/freertos/nucleo_f746zg/client-colcon.meta

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,8 @@
1010
"cmake-args": [
1111
"-DENABLE_TESTING=OFF",
1212
"-DRCUTILS_NO_FILESYSTEM=ON",
13-
"-DRCUTILS_AVOID_DYNAMIC_ALLOCATION=ON"
13+
"-DRCUTILS_AVOID_DYNAMIC_ALLOCATION=ON",
14+
"-DRCUTILS_NO_64_ATOMIC=ON"
1415
]
1516
},
1617
"microxrcedds_client": {

config/freertos/nucleo_f746zg/configure.sh

Lines changed: 10 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -13,52 +13,35 @@ function help {
1313

1414
echo $CONFIG_NAME > $FW_TARGETDIR/APP
1515

16+
1617
if [ "$UROS_TRANSPORT" == "udp" ]; then
1718

1819
update_meta "rmw_microxrcedds" "RMW_UXRCE_TRANSPORT="$UROS_TRANSPORT
1920
update_meta "rmw_microxrcedds" "RMW_UXRCE_DEFAULT_UDP_IP="$UROS_AGENT_IP
2021
update_meta "rmw_microxrcedds" "RMW_UXRCE_DEFAULT_UDP_PORT="$UROS_AGENT_PORT
22+
23+
update_meta "microxrcedds_client" "UCLIENT_PROFILE_CUSTOM_TRANSPORT=OFF"
2124
update_meta "microxrcedds_client" "UCLIENT_PROFILE_SERIAL=OFF"
2225
update_meta "microxrcedds_client" "UCLIENT_PROFILE_UDP=ON"
2326
update_meta "microxrcedds_client" "UCLIENT_PROFILE_TCP=OFF"
24-
25-
remove_meta "rmw_microxrcedds" "RMW_UXRCE_DEFAULT_SERIAL_DEVICE"
26-
remove_meta "microxrcedds_client" "UCLIENT_EXTERNAL_SERIAL"
27-
remove_meta "microxrcedds_client" "EXTERNAL_TRANSPORT_HEADER_SERIAL"
28-
remove_meta "microxrcedds_client" "EXTERNAL_TRANSPORT_SRC_SERIAL"
29-
27+
3028
echo "Configured $UROS_TRANSPORT mode with agent at $UROS_AGENT_IP:$UROS_AGENT_PORT"
3129

3230
elif [ "$UROS_TRANSPORT" == "serial" ]; then
33-
echo "Using serial device USART$UROS_AGENT_DEVICE."
31+
echo "Using serial device USART."
3432

35-
cp -f $EXTENSIONS_DIR/Src/nucleo_f746zg_serial_transport.c $FW_TARGETDIR/mcu_ws/eProsima/Micro-XRCE-DDS-Client/src/c/profile/transport/serial/serial_transport_external.c
36-
cp -f $EXTENSIONS_DIR/Inc/nucleo_f746zg_serial_transport.h $FW_TARGETDIR/mcu_ws/eProsima/Micro-XRCE-DDS-Client/include/uxr/client/profile/transport/serial/serial_transport_external.h
37-
update_meta "microxrcedds_client" "UCLIENT_EXTERNAL_SERIAL=ON"
38-
update_meta "microxrcedds_client" "UCLIENT_PROFILE_SERIAL=ON"
33+
update_meta "microxrcedds_client" "UCLIENT_PROFILE_CUSTOM_TRANSPORT=ON"
34+
update_meta "microxrcedds_client" "UCLIENT_PROFILE_STREAM_FRAMING=ON"
35+
update_meta "microxrcedds_client" "UCLIENT_PROFILE_SERIAL=OFF"
3936
update_meta "microxrcedds_client" "UCLIENT_PROFILE_UDP=OFF"
4037
update_meta "microxrcedds_client" "UCLIENT_PROFILE_TCP=OFF"
4138

42-
update_meta "rmw_microxrcedds" "RMW_UXRCE_TRANSPORT=custom_serial"
43-
update_meta "rmw_microxrcedds" "RMW_UXRCE_DEFAULT_SERIAL_DEVICE="$UROS_AGENT_DEVICE
44-
45-
remove_meta "rmw_microxrcedds" "RMW_UXRCE_DEFAULT_UDP_IP"
46-
remove_meta "rmw_microxrcedds" "RMW_UXRCE_DEFAULT_UDP_PORT"
47-
48-
echo "Configured $UROS_TRANSPORT mode with agent at USART$UROS_AGENT_DEVICE"
49-
50-
elif [ "$UROS_TRANSPORT" == "serial-usb" ]; then
51-
echo "Using serial USB device. EXPERIMENTAL."
52-
53-
cp -f $EXTENSIONS_DIR/Src/nucleo_f746zg_usb_transport.c $FW_TARGETDIR/mcu_ws/eProsima/Micro-XRCE-DDS-Client/src/c/profile/transport/serial/serial_transport_external.c
54-
cp -f $EXTENSIONS_DIR/Inc/nucleo_f746zg_usb_transport.h $FW_TARGETDIR/mcu_ws/eProsima/Micro-XRCE-DDS-Client/include/uxr/client/profile/transport/serial/serial_transport_external.h
55-
update_meta "microxrcedds_client" "UCLIENT_EXTERNAL_SERIAL=ON"
56-
update_meta "rmw_microxrcedds" "RMW_UXRCE_TRANSPORT=custom_serial"
39+
update_meta "rmw_microxrcedds" "RMW_UXRCE_TRANSPORT=custom"
5740

5841
remove_meta "rmw_microxrcedds" "RMW_UXRCE_DEFAULT_UDP_IP"
5942
remove_meta "rmw_microxrcedds" "RMW_UXRCE_DEFAULT_UDP_PORT"
6043

61-
echo "Configured $UROS_TRANSPORT mode with agent"
44+
echo "Configured $UROS_TRANSPORT mode with agent at USART"
6245
else
6346
help
6447
fi
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
repositories:
22
freertos_apps:
33
type: git
4-
url: https://github.com/micro-ros/freertos_apps
4+
url: https://github.com/micro-ROS/freertos_apps
55
version: foxy

0 commit comments

Comments
 (0)