Skip to content

topic_tools

  • Software
  • Middleware
  • Tool

A ROS 2 package of composable nodes for redirecting, throttling, dropping, multiplexing, transforming and delaying ROS 2 topics at a meta level, without serializing the data.

Made by ROS 2 Tooling Working Groups.

Source on GitHub: github.com/ros-tooling/topic_tools (opens in a new tab). Facts read at commit 1205546 (opens in a new tab).

Licenses

Code
Apache-2.0 (opens in a new tab)

Read by Robotheca from LICENSE (opens in a new tab) (Apache-2.0) at commit 1205546 (opens in a new tab), on 16 Oct 2026.

Commercial use
Yes

What it does

  • Relay subscribes to a topic and republishes it to another topic, working with any message type.
  • RelayField republishes one or more fields of a message into a different message type.
  • Transform converts a topic or one of its fields into another topic and type using a Python expression.
  • Throttle limits republishing either by message rate or by bandwidth in bytes per second over a time window.
  • Drop forwards only some messages, dropping X out of every Y, mainly to save bandwidth on wireless links.
  • Mux switches one output among N input topics, and Demux sends one input to one of N outputs, both with services to switch selection.

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

Getting started

Difficulty
Intermediate

Maintenance

Status
Maintained: a commit in the last 12 months
Newest commit
21 Jun 2026 on rolling
Latest release
None published on GitHub

Checked on GitHub on 16 Oct 2026.

Robots on Robotheca that use 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.