Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
50 commits
Select commit Hold shift + click to select a range
2cd9df2
Create scripts update
pablogs9 May 22, 2020
0e4ad0b
Update foxy_migration branches
pablogs9 May 27, 2020
f2ef559
Ignore rcl_logging_spdlog
pablogs9 Jun 2, 2020
3965a37
Add rcpputils to ROS2 keep list
pablogs9 Jun 2, 2020
06df64f
Adapt to new Micro XRCE-DDS Client configuration approach (#125)
Jun 2, 2020
1df1202
Update zephyr apps
pablogs9 Jun 2, 2020
e0e6c05
Avoid multiple typesupports
pablogs9 Jun 2, 2020
5d0475b
Update repos (#126)
pablogs9 Jun 2, 2020
592a6fd
Fix yaml_filter warning. (#127)
Jun 2, 2020
56cb141
Update rosidl_typesupport, tracetools and rclc dependencies.
Jun 4, 2020
00ab620
Disable yaml parser and logging in rcl for Zephyr applications.
Jun 4, 2020
69c4b6e
Ignore rcpputils and rclc_examples for Zephyr.
Jun 4, 2020
577d35d
Fix rcl compilation for Zephyr.
Jun 5, 2020
2f54ab9
Updated rclc branches
pablogs9 Jun 9, 2020
3ad3c0f
Updated zephyr build scripts (#130)
pablogs9 Jun 11, 2020
d5338d9
Update client_host_packages.repos
pablogs9 Jun 25, 2020
02990da
Updating branches (#135)
pablogs9 Jun 26, 2020
ee36b81
Move create ws to foxy
pablogs9 Jul 9, 2020
c4d7cf4
Update agent_uros_packages.repos
pablogs9 Jul 15, 2020
adf3632
Updated Micro-CDR branch
pablogs9 Jun 16, 2020
06fda82
Updates
pablogs9 Jun 16, 2020
5437f3d
Managing flash in micro-ROS
pablogs9 Jun 17, 2020
811cf67
Added no thread support for rcutils
pablogs9 Jul 20, 2020
6d14072
Fix metas
pablogs9 Jul 21, 2020
54af86e
Updated freertos bs (#132)
pablogs9 Jul 21, 2020
5f8b42d
Updating CI
pablogs9 Jul 21, 2020
35441a4
Updating CI
pablogs9 Jul 21, 2020
b35ea79
Remove cmake update for ubuntu 20.04
pablogs9 Jul 21, 2020
be1ac43
Fix host creation
pablogs9 Jul 21, 2020
c91528d
Update foxy tag
pablogs9 Jul 21, 2020
a3a3b2b
Updated freertos_apps branches
pablogs9 Jul 21, 2020
98e3337
Update foxy for raspbian
pablogs9 Jul 21, 2020
50fa4c3
Update zephyr host CI app
pablogs9 Jul 21, 2020
cd41921
Updates
pablogs9 Jul 21, 2020
7902607
Update README
jamoralp Jul 21, 2020
614c827
Updated all to foxy branches
pablogs9 Jul 21, 2020
df465ac
Fix table
jamoralp Jul 21, 2020
c98215e
Revert tracetools to foxy_migration
pablogs9 Jul 21, 2020
ea9d94f
Merge remote-tracking branch 'origin/feature/foxy_migration' into fea…
pablogs9 Jul 21, 2020
cf7a48a
More fixes to table
jamoralp Jul 21, 2020
ffaa31a
More fixes to table styling
jamoralp Jul 21, 2020
15a1c1a
Update repos
pablogs9 Jul 21, 2020
4daba39
remove livecycle from host
pablogs9 Jul 21, 2020
5cc4b38
Update zephyr host app
pablogs9 Jul 21, 2020
8331a81
Updated host installation
pablogs9 Jul 22, 2020
ba221e9
Fix yaml
pablogs9 Jul 22, 2020
06cd3c5
Update CI
pablogs9 Jul 22, 2020
e34cc3c
Update CI
pablogs9 Jul 22, 2020
dcff7d4
Fix host CI
pablogs9 Jul 22, 2020
f63f7d1
Temporary disable raspbian CI
pablogs9 Jul 22, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
60 changes: 31 additions & 29 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,8 @@ name: CI

on:
pull_request:
branches:
- dashing
- crystal
branches:
- '**'

jobs:

Expand Down Expand Up @@ -108,26 +107,33 @@ jobs:
. /opt/ros/$ROS_DISTRO/setup.sh
. install/local_setup.sh
ros2 run micro_ros_setup create_firmware_ws.sh host
colcon build --merge-install --metas src - --packages-skip rclc micro_ros_demos_rclc rclc_examples
colcon build --merge-install --metas src

- name: installation
run: |
(test -f install/lib/micro_ros_demos_rcl/int32_publisher/int32_publisher) && true || false
(test -f install/lib/micro_ros_demos_rcl/int32_subscriber/int32_subscriber) && true || false
(test -f install/lib/micro_ros_demos_rcl/int32_publisher_subscriber/int32_publisher_subscriber) && true || false
(test -f install/lib/micro_ros_demos_rcl/int32_multinode/int32_multinode) && true || false
(test -f install/lib/micro_ros_demos_rcl/guard_condition/guard_condition) && true || false
(test -f install/lib/micro_ros_demos_rcl/fibonacci_action_server/fibonacci_action_server) && true || false
(test -f install/lib/micro_ros_demos_rcl/fibonacci_action_client/fibonacci_action_client) && true || false
(test -f install/lib/micro_ros_demos_rcl/configured_subscriber/configured_subscriber) && true || false
(test -f install/lib/micro_ros_demos_rcl/configured_publisher/configured_publisher) && true || false
(test -f install/lib/micro_ros_demos_rcl/addtwoints_server/addtwoints_server) && true || false
(test -f install/lib/micro_ros_demos_rcl/addtwoints_client/addtwoints_client) && true || false
(test -f install/lib/micro_ros_demos_rclc/addtwoints_client/addtwoints_client) && true || false
(test -f install/lib/micro_ros_demos_rclc/addtwoints_server/addtwoints_server) && true || false
(test -f install/lib/micro_ros_demos_rclc/complex_msg_publisher/complex_msg_publisher) && true || false
(test -f install/lib/micro_ros_demos_rclc/complex_msg_subscriber/complex_msg_subscriber) && true || false
(test -f install/lib/micro_ros_demos_rclc/configured_publisher/configured_publisher) && true || false
(test -f install/lib/micro_ros_demos_rclc/configured_subscriber/configured_subscriber) && true || false
(test -f install/lib/micro_ros_demos_rclc/fibonacci_action_client/fibonacci_action_client) && true || false
(test -f install/lib/micro_ros_demos_rclc/fibonacci_action_server/fibonacci_action_server) && true || false
(test -f install/lib/micro_ros_demos_rclc/fragmented_publication/fragmented_publication) && true || false
(test -f install/lib/micro_ros_demos_rclc/fragmented_subscription/fragmented_subscription) && true || false
(test -f install/lib/micro_ros_demos_rclc/int32_multinode/int32_multinode) && true || false
(test -f install/lib/micro_ros_demos_rclc/int32_publisher/int32_publisher) && true || false
(test -f install/lib/micro_ros_demos_rclc/int32_publisher_subscriber/int32_publisher_subscriber) && true || false
(test -f install/lib/micro_ros_demos_rclc/int32_subscriber/int32_subscriber) && true || false
(test -f install/lib/micro_ros_demos_rclc/ping_pong/ping_pong) && true || false
(test -f install/lib/micro_ros_demos_rclc/string_publisher/string_publisher) && true || false
(test -f install/lib/micro_ros_demos_rclc/string_subscriber/string_subscriber) && true || false
(test -f install/lib/micro_ros_demos_rclc/timer/timer) && true || false

# Temporary solution due to NuttX is no fully implemented on the generic build system
client_nuttx_firmware:
runs-on: ubuntu-latest
container: microros/ci:${{github.base_ref}}
container: ros:${{github.base_ref}}
needs: micro_ros_build

steps:
Expand Down Expand Up @@ -167,7 +173,7 @@ jobs:
#Build test for FreeRTOS and Zephyr
client_firmware:
runs-on: ubuntu-latest
container: microros/ci:dashing
container: ros:${{github.base_ref}}
needs: micro_ros_build

strategy:
Expand Down Expand Up @@ -200,7 +206,7 @@ jobs:

- rtos: zephyr
platform: host
configuration: host_int32_publisher
configuration: ping_pong
transport_arguments: -t udp -i 192.168.1.1 -p 8080
binary: 'firmware/build/zephyr/zephyr.exe'

Expand All @@ -209,10 +215,11 @@ jobs:
configuration: agent_lite
binary: 'firmware/bin/micro_ros_agent_lite'

- rtos: raspbian
platform: buster_v7
configuration: weather_publisher
binary: 'firmware/bin/weather_publisher'
# Workaround while fixing #8919
# - rtos: raspbian
# platform: buster_v7
# configuration: weather_publisher
# binary: 'firmware/bin/weather_publisher'

steps:
- uses: actions/checkout@v2
Expand All @@ -222,12 +229,7 @@ jobs:
- name: dependencies
run: |
apt update
apt install -y wget
wget -q -O - https://apt.kitware.com/keys/kitware-archive-latest.asc > kitware.key
apt-key add kitware.key
echo "deb https://apt.kitware.com/ubuntu/ bionic main" > /etc/apt/sources.list.d/kitware.list
apt update
apt install -y python3-colcon-metadata python3-pip cmake
apt install -y python3-colcon-metadata python3-pip
rosdep update
rosdep install -y --from-paths src --ignore-src -y

Expand All @@ -243,7 +245,7 @@ jobs:

- name: build
run: |
. /opt/ros/dashing/setup.sh
. /opt/ros/foxy/setup.sh
. install/local_setup.sh
ros2 run micro_ros_setup create_firmware_ws.sh ${{ matrix.rtos }} ${{ matrix.platform }}
ros2 run micro_ros_setup configure_firmware.sh ${{ matrix.configuration }} ${{ matrix.transport_arguments }}
Expand Down
46 changes: 26 additions & 20 deletions micro_ros_setup/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ This package targets **ROS 2** installation. ROS 2 supported distributions are:
|-|-|-|
| Crystal | Supported | `crystal` |
| Dashing | Supported | `dashing` |
| Eloquent | *Work in progress* | |
| Foxy | Supported | `foxy` |

Some other prerequisites needed for building a firmware using this package are:

Expand Down Expand Up @@ -116,49 +116,55 @@ For more information please visit the links.
<td>uros</td>
</tr>
<tr>
<td rowspan=6>freertos</td>
<td rowspan=2>crazyflie21</td>
<td><a href="https://github.com/micro-ROS/freertos_apps/blob/dashing/apps/crazyflie_position_publisher/app.c">crazyflie_position_publisher</a></td>
<td rowspan=4>freertos</td>
<td rowspan=1>crazyflie21</td>
<td><a href="https://github.com/micro-ROS/freertos_apps/blob/foxy/apps/crazyflie_position_publisher/app.c">crazyflie_position_publisher</a></td>
</tr>
<tr>
<td><a href="https://github.com/micro-ROS/freertos_apps/blob/dashing/apps/crazyflie_uros_sample/app.c">crazyflie_uros_sample</a></td>
<td rowspan=3>olimex-stm32-e407</td>
<td><a href="https://github.com/micro-ROS/freertos_apps/blob/foxy/apps/add_two_ints_service/app.c">add_two_ints_service</a></td>
</tr>
<tr>
<td rowspan=4>olimex-stm32-e407</td>
<td><a href="https://github.com/micro-ROS/freertos_apps/blob/dashing/apps/add_two_ints/app.c">add_two_ints</a></td>
<td><a href="https://github.com/micro-ROS/freertos_apps/blob/foxy/apps/int32_publisher/app.c">int32_publisher</a></td>
</tr>
<tr>
<td><a href="https://github.com/micro-ROS/freertos_apps/blob/dashing/apps/ping_pong/app.c">ping_pong</a></td>
<td><a href="https://github.com/micro-ROS/freertos_apps/blob/foxy/apps/ping_pong/app.c">ping_pong</a></td>
</tr>
<tr>
<td><a href="https://github.com/micro-ROS/freertos_apps/blob/dashing/apps/olimex_uros_sample/app.c">olimex_uros_sample</a></td>
<td rowspan=11>zephyr</td>
<td rowspan=6>discovery_l475_iot1</td>
<td><a href="https://github.com/micro-ROS/zephyr_apps/blob/foxy/apps/add_two_ints_service/src/main.c">add_two_ints_service</a></td>
</tr>
<tr>
<td><a href="https://github.com/micro-ROS/freertos_apps/blob/dashing/apps/int32_publisher/app.c">int32_publisher</a></td>
<td><a href="https://github.com/micro-ROS/zephyr_apps/blob/foxy/apps/int32_publisher/src/main.c">int32_publisher</a></td>
</tr>
<tr>
<td rowspan=7>zephyr</td>
<td rowspan=4>discovery_l475_iot1</td>
<td><a href="https://github.com/micro-ROS/zephyr_apps/blob/dashing/apps/ping_pong/src/main.c">ping_pong</a></td>
<td><a href="https://github.com/micro-ROS/zephyr_apps/blob/foxy/apps/int32_wifi_publisher/src/main.c">int32_wifi_publisher</a></td>
</tr>
<tr>
<td><a href="https://github.com/micro-ROS/zephyr_apps/blob/dashing/apps/int32_publisher/src/main.c">int32_publisher</a></td>
<td><a href="https://github.com/micro-ROS/zephyr_apps/blob/foxy/apps/ping_pong/src/main.c">ping_pong</a></td>
</tr>
<tr>
<td><a href="https://github.com/micro-ROS/zephyr_apps/blob/dashing/apps/sensors_publisher/src/main.c">sensors_publisher</a></td>
<td><a href="https://github.com/micro-ROS/zephyr_apps/blob/foxy/apps/sensors_publisher/src/main.c">sensors_publisher</a></td>
</tr>
<tr>
<td><a href="https://github.com/micro-ROS/zephyr_apps/blob/dashing/apps/tof_ws2812/src/main.c">tof_ws2812</a></td>
<td><a href="https://github.com/micro-ROS/zephyr_apps/blob/foxy/apps/tof_ws2812/src/main.c">tof_ws2812</a></td>
</tr>
<tr>
<td rowspan=3>olimex-stm32-e407</td>
<td><a href="https://github.com/micro-ROS/zephyr_apps/blob/dashing/apps/ping_pong/src/main.c">ping_pong</a></td>
<td rowspan=5>olimex-stm32-e407</td>
<td><a href="https://github.com/micro-ROS/zephyr_apps/blob/foxy/apps/add_two_ints_service/src/main.c">add_two_ints_service</a></td>
</tr>
<tr>
<td><a href="https://github.com/micro-ROS/zephyr_apps/blob/foxy/apps/int32_publisher/src/main.c">int32_publisher</a></td>
</tr>
<tr>
<td><a href="https://github.com/micro-ROS/zephyr_apps/blob/foxy/apps/openmanipulator_tof/src/main.c">openmanipulator_tof</a></td>
</tr>
<tr>
<td><a href="https://github.com/micro-ROS/zephyr_apps/blob/dashing/apps/int32_publisher/src/main.c">int32_publisher</a></td>
<td><a href="https://github.com/micro-ROS/zephyr_apps/blob/foxy/apps/ping_pong/src/main.c">ping_pong</a></td>
</tr>
<tr>
<td><a href="https://github.com/micro-ROS/zephyr_apps/blob/dashing/apps/vl53l1x_tof_sensor/src/main.c">vl53l1x_tof_sensor</a></td>
<td><a href="https://github.com/micro-ROS/zephyr_apps/blob/foxy/apps/vl53l1x_tof_sensor/src/main.c">vl53l1x_tof_sensor</a></td>
</tr>
</tbody>
</table>
Expand Down
8 changes: 4 additions & 4 deletions micro_ros_setup/config/agent_uros_packages.repos
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
# Micro XRCE-DDS agent should be a dashing package
repositories:
# MicroROS
uros/uROS_agent:
uros/micro-ROS-Agent:
type: git
url: https://github.com/microROS/micro-ROS-Agent.git
version: dashing
version: foxy
# TODO (pablogs9): Integrate Micro XRCE-DDS Agent dependency download in micro-ROS-Agent package
eProsima/Micro-XRCE-DDS-Agent:
type: git
url: https://github.com/eProsima/Micro-XRCE-DDS-Agent.git
version: dashing
version: foxy
drive_base:
type: git
url: https://github.com/micro-ROS/drive_base.git
Expand Down
2 changes: 1 addition & 1 deletion micro_ros_setup/config/client_ros2_packages.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@ keep:
ros2/rosidl_defaults
ros2/rosidl
ros2/rosidl_dds
ros2/rosidl_typesupport
ros2/rmw_implementation
ros2/common_interfaces
ros2/libyaml_vendor
Expand All @@ -13,3 +12,4 @@ keep:
ros2/rcl_logging
ros2/test_interface_files
ros2/example_interfaces
ros2/rcpputils
4 changes: 2 additions & 2 deletions micro_ros_setup/config/freertos/crazyflie21/board.repos
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,10 @@ repositories:
crazyflie_firmware:
type: git
url: https://github.com/bitcraze/crazyflie-firmware
version: a2a26abd53a5f328374877bfbcb7b25ed38d8111
version: 2020.06

freertos_apps:
type: git
url: https://github.com/micro-ROS/freertos_apps
version: dashing
version: foxy

2 changes: 1 addition & 1 deletion micro_ros_setup/config/freertos/crazyflie21/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -33,5 +33,5 @@ pushd $EXTENSIONS_DIR >/dev/null
fi

# build firmware
make PLATFORM=cf2 CLOAD=0 UROS_APP_FOLDER=$UROS_APP_FOLDER
make PLATFORM=cf2 CLOAD=0 UROS_APP_FOLDER=$UROS_APP_FOLDER PYTHON=python3
popd >/dev/null
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,10 @@
},
"microxrcedds_client":{
"cmake-args":[
"-DUCLIENT_PIC=OFF"
"-DUCLIENT_PIC=OFF",
"-DUCLIENT_PROFILE_DISCOVERY=OFF",
"-DUCLIENT_PROFILE_UDP=OFF",
"-DUCLIENT_PROFILE_TCP=OFF"
]
},
"rmw_microxrcedds":{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,32 +2,44 @@ repositories:
eProsima/Micro-CDR:
type: git
url: https://github.com/eProsima/Micro-CDR.git
version: dashing
version: foxy
eProsima/Micro-XRCE-DDS-Client:
type: git
url: https://github.com/eProsima/Micro-XRCE-DDS-Client.git
version: dashing
version: foxy

# MicroROS

uros/rcl:
type: git
url: https://github.com/micro-ROS/rcl
version: dashing
version: foxy
uros/rclc:
type: git
url: https://github.com/micro-ROS/rclc
version: master
uros/rcutils:
type: git
url: https://github.com/micro-ROS/rcutils
version: dashing
version: foxy
uros/rmw_microxrcedds:
type: git
url: https://github.com/micro-ROS/rmw-microxrcedds.git
version: dashing
version: foxy
uros/rosidl_typesupport:
type: git
url: https://github.com/micro-ROS/rosidl_typesupport.git
version: foxy
uros/rosidl_typesupport_microxrcedds:
type: git
url: https://github.com/micro-ROS/rosidl_typesupport_microxrcedds.git
version: dashing
version: foxy
uros/tracetools:
type: git
url: https://gitlab.com/micro-ROS/ros_tracing/ros2_tracing
version: feature/foxy_migration

# interim, until crosscompile fix is available in dashing branch
# interim, until crosscompile fix is available in foxy branch
ros2/tinydir_vendor:
type: git
url: https://github.com/ros2/tinydir_vendor.git
Expand Down
12 changes: 7 additions & 5 deletions micro_ros_setup/config/freertos/crazyflie21/create.sh
Original file line number Diff line number Diff line change
Expand Up @@ -15,12 +15,14 @@ pushd $FW_TARGETDIR >/dev/null

# ignore broken packages
touch mcu_ws/ros2/rcl_logging/rcl_logging_log4cxx/COLCON_IGNORE
touch mcu_ws/ros2/rcl/rcl_action/COLCON_IGNORE
touch mcu_ws/ros2/rcl_logging/rcl_logging_spdlog/COLCON_IGNORE
touch mcu_ws/ros2/rcl/COLCON_IGNORE
touch mcu_ws/ros2/rosidl/rosidl_typesupport_introspection_c/COLCON_IGNORE
touch mcu_ws/ros2/rosidl/rosidl_typesupport_introspection_cpp/COLCON_IGNORE
touch mcu_ws/ros2/rcpputils/COLCON_IGNORE
touch mcu_ws/uros/rcl/rcl_yaml_param_parser/COLCON_IGNORE
touch mcu_ws/uros/rclc/rclc_examples/COLCON_IGNORE

rosdep install -y --from-paths mcu_ws -i mcu_ws --rosdistro dashing --skip-keys="$SKIP"

# Turn off features MicroXRCEClient
echo -e ",s/PROFILE_DISCOVERY=TRUE/PROFILE_DISCOVERY=FALSE/\n,s/PROFILE_UDP_TRANSPORT=TRUE/PROFILE_UDP_TRANSPORT=FALSE/\n,s/PROFILE_TCP_TRANSPORT=TRUE/PROFILE_TCP_TRANSPORT=FALSE/g\nw" | ed $(find mcu_ws -name client.config) >/dev/null &>/dev/null
rosdep install -y --from-paths mcu_ws -i mcu_ws --rosdistro foxy --skip-keys="$SKIP"

popd >/dev/null
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ repositories:
freertos_apps:
type: git
url: https://github.com/micro-ROS/freertos_apps
version: dashing
version: foxy



Original file line number Diff line number Diff line change
@@ -1,5 +1,11 @@
{
"names": {
"tracetools": {
"cmake-args": [
"-DTRACETOOLS_DISABLED=ON",
"-DTRACETOOLS_STATUS_CHECKING_TOOL=OFF"
]
},
"rcutils": {
"cmake-args": [
"-DENABLE_TESTING=OFF",
Expand All @@ -9,7 +15,8 @@
},
"microxrcedds_client": {
"cmake-args": [
"-DUCLIENT_PIC=OFF"
"-DUCLIENT_PIC=OFF",
"-DUCLIENT_PROFILE_DISCOVERY=OFF"
]
},
"rmw_microxrcedds": {
Expand Down
Loading