Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
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
6 changes: 5 additions & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -1,9 +1,13 @@
name: CI

on:
push:
branches:
- '**'
pull_request:
branches:
- '**'
workflow_dispatch:
schedule:
- cron: '59 23 * * *' # every day at 23:59 UTC

Expand All @@ -16,7 +20,7 @@ jobs:
strategy:
fail-fast: false
matrix:
platform: [teensy41, teensy40, teensy36, teensy35, teensy31, due, zero, olimex_e407, esp32dev, nanorp2040connect, portenta_h7_m7, teensy41_eth, nanorp2040connect_wifi, portenta_h7_m7_wifi, esp32dev_wifi, esp32dev_ethernet, portenta_h7_m7_humble, portenta_h7_m7_jazzy, portenta_h7_m7_kilted, portenta_h7_m7_rolling, teensy41_custom, pico, pico2]
platform: [teensy41, teensy40, teensy36, teensy35, teensy31, due, zero, olimex_e407, esp32dev, nanorp2040connect, portenta_h7_m7, teensy41_eth, nanorp2040connect_wifi, portenta_h7_m7_wifi, esp32dev_wifi, esp32dev_ethernet, portenta_h7_m7_humble, portenta_h7_m7_jazzy, portenta_h7_m7_kilted, portenta_h7_m7_lyrical, portenta_h7_m7_rolling, teensy41_custom, pico, pico2]

steps:
- uses: actions/checkout@v5
Expand Down
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -102,6 +102,7 @@ The target ROS 2 distribution can be configured with the `board_microros_distro
- `humble`
- `jazzy`
- `kilted` *(default value)*
- `lyrical`
- `rolling`

### Transport configuration
Expand Down
14 changes: 14 additions & 0 deletions ci/platformio.ini
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
[env]
board_microros_distro = jazzy

; Humble test
[env:portenta_h7_m7_humble]
platform = ststm32
Expand Down Expand Up @@ -28,6 +31,16 @@ board_microros_distro = kilted
lib_deps =
../

; Lyrical test
[env:portenta_h7_m7_lyrical]
platform = ststm32
board = portenta_h7_m7
framework = arduino
board_microros_transport = serial
board_microros_distro = lyrical
lib_deps =
../

; Rolling test
[env:portenta_h7_m7_rolling]
platform = ststm32
Expand Down Expand Up @@ -206,3 +219,4 @@ framework = arduino
board_microros_transport = custom
lib_deps =
../

2 changes: 1 addition & 1 deletion ci/src/main.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -126,7 +126,7 @@ void setup() {
&timer,
&support,
RCL_MS_TO_NS(100),
timer_callback));
(rcl_timer_callback_t) timer_callback));

// create executor
RCCHECK(rclc_executor_init(&executor, &support.context, 1, &allocator));
Expand Down
7 changes: 4 additions & 3 deletions extra_script.py
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,8 @@

selected_board_meta = boards_metas[board] if board in boards_metas else "colcon.meta"

# Retrieve the required transport. Default kilted
microros_distro = global_env.BoardConfig().get("microros_distro", "kilted")
# Retrieve the required distro
microros_distro = global_env.BoardConfig().get("microros_distro", "")

# Retrieve the required transport. Default serial
microros_transport = global_env.BoardConfig().get("microros_transport", "serial")
Expand Down Expand Up @@ -104,12 +104,13 @@ def build_microros(*args, **kwargs):
env['CC'],
env['CXX'],
env['AR'],
"{} {} -DCLOCK_MONOTONIC=0 -D'__attribute__(x)='".format(' '.join(env['CFLAGS']), ' '.join(env['CCFLAGS'])),
"{} {} -Wno-error=implicit-function-declaration -DCLOCK_MONOTONIC=0 -D'__attribute__(x)='".format(' '.join(env['CFLAGS']), ' '.join(env['CCFLAGS'])),
"{} {} -fno-rtti -DCLOCK_MONOTONIC=0 -D'__attribute__(x)='".format(' '.join(env['CXXFLAGS']), ' '.join(env['CCFLAGS']))
)

python_env_path = env['PROJECT_CORE_DIR'] + "/penv/bin/activate"
builder = library_builder.Build(library_folder=main_path, packages_folder=extra_packages_path, distro=microros_distro, python_env=python_env_path)
builder.env = env.get("ENV", os.environ.copy())
builder.run('{}/metas/{}'.format(main_path, selected_board_meta), cmake_toolchain.path, microros_user_meta)

#######################################################
Expand Down
Loading