Skip to content

Bugfix/revert to make#92

Merged
n-mat merged 113 commits into
developfrom
bugfix/revert_to_make
May 31, 2026
Merged

Bugfix/revert to make#92
n-mat merged 113 commits into
developfrom
bugfix/revert_to_make

Conversation

@akoerner1

@akoerner1 akoerner1 commented May 20, 2026

Copy link
Copy Markdown
Contributor

Description

This PR overhauls the build system and adds several major features across ADORe subsystems.

Build System Migration

The build system has been migrated from just to GNU Make. just lacks available system packages, which caused installation failures on some systems, notably NVIDIA Jetson Orin. After encountering these issues the team decided to revert to GNU Make.

Assuming Docker and GNU Make are installed the following is the new procedure to build ADORe:

  1. Clone the ADORe repositiory:
git clone git@github.com:eclipse-adore/adore.git && cd adore && git submodule update --init --recursive
  1. Build the ADORe CLI Docker context:
make build
  1. Start lichtblick for visualization:
cd tools/lichtblick
make start
  1. Run the ADORe CLI and a scenario
make cli
cd adore_scenarios/simulation_scenarios
ros2 launch dlr_campus.launch.py
  1. Open Lichtblick in the browser:
http://localhost:8080/?ds=rosbridge-websocket&ds.url=ws://localhost:9090&layout=Default.json

ADORe Embedded

adore/adore_embedded builds a self-contained binary package under 2GB compatible with Docker, Podman, and chroot. Packages are published to eclipse-adore/adore releases via GitHub Actions on PRs to develop.

ADORe Mission Control Node

with support of @sanathDLR the mission control node was updated to include support for supplying intermediary way points.

goal_positions can be supplied as a list of lat long coordinates to the mission control node with a flag to continue or stop at the defined position.

start_position = Position(lat_long=(52.268325, 10.536948), psi=0.000)
goal_positions = [
    Waypoint(Position(lat_long=(52.268374, 10.537156))),
    Waypoint(Position(lat_long=(52.268394, 10.537234)), WaypointBehavior.STOP),
]

Landing Page

The ADORe landing page has been restyled and reorganized.

Eclipse Zenoh Integration
The ADORe CLI now bundles the ROS Zenoh bridge libraries and ROS Zenoh DDS plugin. ADORe supports two transport modes: the rmw_zenoh_cpp DDS RMW transport, or a bridge node located at ros2_workspace/src/adore_interfaces/zenoh_message_bridge that bridges selected topics from FastDDS to Zenoh. Both the bridge node and a Zenoh router start automatically with the CLI by default. Startup behavior and connection parameters are controlled via adore.env. The router and bridge are configured via zenoh_router_config.json5 and zenoh_bridge_config.yaml respectively. See ros2_workspace/src/adore_interfaces/zenoh_message_bridge/README.md for full integration details.

MQTT Integration
The ADORe CLI now bundles the Eclipse Mosquitto packages and associated Python client libraries. A ROS bridge node at ros2_workspace/src/adore_interfaces/mqtt_message_bridge handles topic bridging between ROS and MQTT. Both the bridge node and an optional MQTT broker can be configured to start automatically via adore.env. Topics to bridge are defined in mqtt_bridge_config.yaml. See ros2_workspace/src/adore_interfaces/mqtt_message_bridge/README.md for full integration details.

Mission Control Dashboard

When the ADORe CLI is running the mission control dashboard can be found at: localhost:8888

Topic Tools -- inspect, subscribe, publish, template, save, and load ROS topics and message types.

ROS Task Manager -- manage and halt ROS processes via the web interface.
ROS Workspace -- The ADORe mission control dash board now has a "ROS Workspace" tab that can be used to manage the ROS 2 workspace directory. With that the current build status for each package is monitored, builds can be triggered.

image

Hardware Monitor -- a new ROS node at adore/ros2_workspace/src/adore_interfaces/hardware_monitor reports system health (CPU, RAM, disk) and hardware inventory to the following ROS topics:

/cluster/ADORe_CLI/hardware_inventory
/cluster/ADORe_CLI/hardware_status

Model Checker -- a model checking dashboard with live results and config save/edit/load support.

Goal Picker -- select start position, goal position, and heading with automatic coordinate conversion between lat/long and UTM. Updated goal picker to support picking intermediary waypoints. Goal picker auto-generates they python representation of the start and goal positions which can be used in ADORe scenario launch files.

image image
  • Added OSM lane markers to goal picker which can be enabled and disabled via the settings pannel:
image image
  • other small bug fixes to the mission control dashboard gui

SUMO bridge improvements

With the support of @n-mat and @sanathDLR the ADORE SUMO bridge node was improved.
For a complete list of features see: https://github.com/eclipse-adore/sumo_if_ros/blob/master/README.md

Type of Change

Please delete options that are not relevant:

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Documentation update (adds or updates documentation)
  • Refactor (non-breaking change for code readability/structure)
  • Other (please describe):

Checklist

  • I have performed a self-review of my own code.
  • I have signed and submitted the Eclipse Foundation Contributors Agreement: https://www.eclipse.org/legal/eca/.
  • My last commit was made with the --signoff flag as required by the Eclipse Foundation.
  • I have commented my code, particularly in hard-to-understand areas and provided a README.md when necessary.
  • I have added tests that prove my fix is effective or that my feature works.
  • Tests pass locally with my changes: (run 'make test' on the ADORe project root to run unit tests).
  • I have updated the documentation in documentation/technical_reference_manual where necessary.
  • I have updated the THIRD-PARTY.md if I have introduced new third-party libraries or dependencies to the project.
  • I have updated the CONTRIBUTERS.md if I wish to acknowledged for my contribution.

akoerner1 and others added 30 commits March 17, 2026 15:18
Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
…n tests, added LOG_DIRECTORY to adore.env

Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
…ng input to adore api, updated vendor libs, fixed lichtblick url patch to load layouts, normalized scnearios, updated github workflow by reordering tasks

Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
Signed-off-by: Mikkel Skov Maarssoe <mikkel.maarssoe@dlr.de>
Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
…pdated workflow to only push user image

Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
…generate release

Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
n-mat and others added 25 commits May 26, 2026 15:57
Signed-off-by: n-mat <matthias.nichting@dlr.de>
…_message bridge node

Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
…e into bugfix/revert_to_make

Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
…ools packages are fixed.

Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
… env var to the adore_embedded so that packages can be excluded from requirements gathering, added json_cdr transport type to the zenoh message bridge and mqtt message bridge

Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
…e Makefile

Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
…_planning

Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
…he node stand-alone

Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
…tion

Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
Signed-off-by: n-mat <matthias.nichting@dlr.de>
…ext for zenoh bridge, merged with remote

Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
… control dashboard where failed builds were being marked green.

Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
…fixed loop bug in mission control dashboard.

Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
…ge hash

Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
…e.launch.py

Signed-off-by: n-mat <matthias.nichting@dlr.de>
…e mission control node in simulation_scenarios, updated goal picker to support picking multiple goal points.

Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>
Signed-off-by: Andrew Koerner <andrew.koerner@dlr.de>

@n-mat n-mat left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Successfully tested on my system.

@n-mat n-mat merged commit 7e4a1fa into develop May 31, 2026
7 checks passed
@n-mat n-mat deleted the bugfix/revert_to_make branch May 31, 2026 17:39
akoerner1 pushed a commit that referenced this pull request Jun 12, 2026
## Description

Deleted r2s_loading_from_wfs_test.cpp from map downloader tests, and
updated two paths to reflect the latest structural changes.

In detail:

In ros2_workspace/src/adore_test_programs/adore_map_downloader_test/:

- Deleted r2s_loading_from_wfs_test.cpp and two related resources
(.json) under tracks/ from map downloader tests (had already been done
in PR #86, however PR #92 mistakenly reintroduced the files)
- Updated path in attribute "output" of config/r2s_wfs_config_bs.json
(necessary due to structural changes in PR #92)
- Updated configuration path in basic_map_loading_from_wfs_test.cpp
(necessary due to structural changes in PR #92)

## Type of Change

Please delete options that are not relevant:

- [x] Bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing
functionality to not work as expected)
- [ ] Documentation update (adds or updates documentation)
- [ ] Refactor (non-breaking change for code readability/structure)
- [ ] Other (please describe):

## Checklist

- [x] I have performed a self-review of my own code.
- [x] I have signed and submitted the Eclipse Foundation Contributors
Agreement: https://www.eclipse.org/legal/eca/.
- [x] My last commit was made with the `--signoff` flag as required by
the Eclipse Foundation.
- [x] I have commented my code, particularly in hard-to-understand areas
and provided a README.md when necessary.
- [x] I have added tests that prove my fix is effective or that my
feature works.
- [ ] Tests pass locally with my changes: (run 'make test' on the ADORe
project root to run unit tests).
- [ ] I have updated the documentation in
`documentation/technical_reference_manual` where necessary.
- [ ] I have updated the `THIRD-PARTY.md` if I have introduced new
third-party libraries or dependencies to the project.
- [ ] I have updated the `CONTRIBUTERS.md` if I wish to acknowledged for
my contribution.

## How Has This Been Tested?

After building and 'make cli', add the password in
adore/ros2_workspace/src/adore_test_programs/adore_map_downloader_test/config/r2s_wfs_config_bs.json.
In adore/ros2_workspace/install/adore_map_downloader_test/bin, type
'./basic_map_loading_from_wfs_test' (without parameters). Along with the
last few lines of output, you should see
'basic_map_loading_from_wfs_test: All tests passed successfully, good!'
(which has been tested).

**Test Configuration**:
- OS: Ubuntu Noble Numbat
- Docker Version: 29.3.1

Signed-off-by: s0nofab1t <ruediger.ebendt@dlr.de>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants