Skip to content

ros_babel_fish

  • Software
  • Middleware
  • Library

A C++ library that lets ROS2 nodes subscribe to, publish, and call services or actions for message types unknown at compile time.

Made by emergenCITY, Germany (checked on github.com/LOEWE-emergenCITY (opens in a new tab)).

Source on GitHub: github.com/LOEWE-emergenCITY/ros_babel_fish (opens in a new tab). Facts read at commit c6f4bb2 (opens in a new tab).

Licenses

Code
MIT (opens in a new tab)

Read by Robotheca from LICENSE (opens in a new tab) (MIT) at commit c6f4bb2 (opens in a new tab), on 16 Oct 2026.

Commercial use
Yes

What it does

  • Subscribes to and publishes any available ROS2 message type without compile-time definitions.
  • Supports providing and calling services and actions.
  • Requires the type support for the used message, service, or action to be available on the machine.
  • Serializes messages to and from JSON and YAML via the ros_babel_fish_tools package.
  • Includes CLI tools: echo prints a topic's first message, topic_stats reports rate, latency and bandwidth.
  • Includes service_stats, which measures round-trip time and can repeatedly call a service to report call rate and timeouts.

Written by Robotheca from the project's README (opens in a new tab) at commit c6f4bb2.

Getting started

Difficulty
Advanced
Hardware it needs, as the project states it
Only full support for foxy, rolling and ROS2 jazzy and later; on other versions services and actions do not work, while subscribing and publishing work on all ROS2 versions.

Maintenance

Status
Active: a commit in the last 90 days
Newest commit
13 Oct 2026 on rolling
Latest release
None published on GitHub

Checked on GitHub on 16 Oct 2026.

Robots that can run it

No robot on Robotheca is linked to it yet. Links come from a robot's robot.yaml, from its dependency files read as text, or from Robotheca's editors.

Robotheca lists software as a reference: nothing is hosted or run here, and every fact links to where it was read.