![]() |
fkie_multi_agent_suite repositoryfkie_mas_daemon fkie_mas_discovery fkie_mas_gui fkie_mas_meta fkie_mas_msgs fkie_mas_pylib fkie_mas_sync |
|
Repository Summary
Description | ROS packages for detection, synchronization (ros1) and graphical management of multi-robots |
Checkout URI | https://github.com/fkie/fkie-multi-agent-suite.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-06-17 |
Dev Status | UNKNOWN |
CI status | No Continuous Integration |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Packages
Name | Version |
---|---|
fkie_mas_daemon | 4.5.10 |
fkie_mas_discovery | 4.1.4 |
fkie_mas_gui | 4.4.12 |
fkie_mas_meta | 3.0.0 |
fkie_mas_msgs | 3.2.0 |
fkie_mas_pylib | 4.4.1 |
fkie_mas_sync | 2.0.0 |
README
Multi Agent Suite for ROS
Based on the FKIE Multimaster, this suite provides a collection of packages for ROS 1 and 2 for discovering, synchronizing (ROS 1), monitoring, and managing nodes on different hosts using a graphical user interface.
The suite replaces the FKIE Multimaster!
Install
The communication between the GUI and the Daemon (on each host) is based on WebSockets on port 35430+(ROS_DOMAIN_ID), 35430+255+(ROS_DOMAIN_ID)+101*(ROS_MASTER_URI_PORT-11311) with ROS1. These ports should be open in the firewall.
In ROS2 we use a discovery node to get host information for each ROS node. Currently the discovery node depends on the rmw_fastrtps_cpp ROS library. When starting the discovery node RMW_IMPLEMENTATION=rmw_fastrtps_cpp it can be prefixed with if needed (depending on ROS2 version). If the MAS nodes are started via the graphical user interface, this can be configured if needed.
Install debian packages from github
For Ubuntu 20.04, 22.04 and 24.04 there are Debian packages on Github that can be installed with the following command:
wget -O /tmp/install_mas_debs.sh https://raw.githubusercontent.com/fkie/fkie-multi-agent-suite/refs/heads/devel/install_mas_debs.sh && bash /tmp/install_mas_debs.sh
Install on robot without GUI
wget -O /tmp/install_mas_debs.sh https://raw.githubusercontent.com/fkie/fkie-multi-agent-suite/refs/heads/devel/install_mas_debs.sh && bash /tmp/install_mas_debs.sh -r
Run
mas-gui
Alternative Install
Using AppImage and source build
Install dependencies
You need a running TTYD to show screen or log output of the nodes.
sudo snap install ttyd --classic
A python3-websockets version >11 is required. You can install it using pip:
pip install "websockets>=12.0"
Build ROS FKIE packages
You can run the following commands to setup a build from source:
cd ros_workspace/src
git clone https://github.com/fkie/fkie-multi-agent-suite.git fkie-multi-agent-suite
rosdep update
rosdep install -i --as-root pip:false --reinstall --from-paths fkie-multi-agent-suite
Then build all packages:
catkin build fkie_mas_meta
or
colcon build --packages-up-to fkie_mas_daemon
Download GUI
curl -s https://api.github.com/repos/fkie/fkie-multi-agent-suite/releases/latest | grep "browser_download_url.*mas-gui.AppImage" | cut -d : -f 2,3 | tr -d \" | wget --show-progress -i -
chmod +x ./mas-gui.AppImage
mv ./mas-gui.AppImage ~/.local/bin/.
Run
mas-gui.AppImage
in Ubuntu 24.04
mas-gui.AppImage --no-sandbox
For known issues and other build and launch options that affect GUI, see fkie_mas_gui
Documentation
We are working on the documentation for the new version. Until then you can still use the old one. Apart from the package names, all old functions should be supported.
- multimaster_fkie
-
discovery –
discovery using multicast or zeroconf
-
synchronization –
master synchronization
-
Node Manager GUI –
A GUI to manage the configuration on local and remote ROS masters
-
Node Manager daemon –
Helper node allows an easy (auto)start of remote nodes and manage remote launch files
For ROS interfaces and parameterization see the ROS Wiki. For configuration details you can find example launch files in each package.
License
MIT © Fraunhofer FKIE