diagnostics
- Software
- Middleware
- Library
A set of ROS 2 packages that collect diagnostic data from hardware drivers and robot hardware, publish it on the /diagnostics topic, and aggregate and analyze it for operators.
Made by ROS core stacks.
Source on GitHub: github.com/ros/diagnostics (opens in a new tab). Facts read at commit 81b53fa (opens in a new tab).
Licenses
- Code
- BSD-3-Clause (opens in a new tab)
Read by Robotheca from LICENSE (opens in a new tab) (BSD-3-Clause) at commit 81b53fa (opens in a new tab), on 16 Oct 2026.
- Commercial use
- Yes
What it does
- Collects status, device names and values from hardware drivers and robot hardware on the /diagnostics topic using diagnostic_msgs/DiagnosticArray messages.
- Diagnostic_aggregator merges diagnostic messages from several sources into one message, using a plugin system for aggregation rules.
- Diagnostic_updater provides base classes in Python and C++ for publishing custom diagnostic messages.
- Diagnostic_common_diagnostics offers predefined nodes for monitoring the system.
- Diagnostic_remote_logging forwards diagnostics to remote systems, such as influxdb.
- Self_test provides tools to run self tests on nodes; diagnostic_topic_monitor is announced as coming soon.
Written by Robotheca from the project's README (opens in a new tab) at commit 81b53fa.
Getting started
- Difficulty
- Intermediate
- How to start
- The project's website (opens in a new tab)
Maintenance
- Status
- Maintained: a commit in the last 12 months
- Newest commit
- 19 Jun 2026 on ros2
- Latest release
- None published on GitHub
Checked on GitHub on 16 Oct 2026.
Links
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.