Home · Products · Software · ros_status
Software · open source

See what the system is doing right now

ROS 2 normally reports its own state only on the command line. ros_status brings it into the browser — for the operator, the maintainer and the technician standing at the machine.

ros_status: ros2_control view with controller list, hardware components and a live plot of one axis
The ros2_control view: which controllers run and at what rate, which hardware is registered, plus position and velocity of one axis over time. Captured from the public demo with placeholder data.
Open the live demo Runs in the browser, no sign-in. Display only — the demo actuates nothing.
Why

The problem it solves

An unmanned vehicle does not move and nobody knows why. The command line will tell you — if someone is there who can use it, and if they are allowed onto the vehicle computer. In the field, both are rare.

ros_status shows the same state as a page in the browser: which nodes are alive, which controller is active, where a fault comes from. Someone who is not a ROS 2 developer can look it up too.

Scope

Seven views

System

Load, memory, temperature and disk space of the vehicle computer, plus uptime and ROS release — as a trace, not just a momentary value.

Nodes and topics

What runs, what publishes, what listens. With type and participant count per topic.

Lifecycle

Which state a node is in and which transitions are available.

Diagnostics

Component messages by OK, warning, error and stale — with the reported values.

ros2_control

Controllers with rate and state, registered hardware, available interfaces, and position and velocity per axis over time.

Logs

Log output filtered by node and level instead of following a terminal.

ros_status: System view with load, memory, disk and temperature as gauges and a trace
The System view: load, memory, disk and temperature of the vehicle computer, plus the trace over the last few minutes.
Setup

How it connects

  • Two parts run on the vehicle. nexos_status_bridge starts the bridge through which a browser reaches the ROS 2 graph. nexos_status_agent reports load, memory, temperature and disk space to /diagnostics — values ROS 2 does not know by itself. Both start as a systemd service, with nobody logging in.
  • The display sits at the workstation. It is a web application and connects to the vehicle, not the other way round. Nothing to install on a company machine, nothing to clear.
  • Connected over rosbridge. An open standard from the ROS ecosystem, not a protocol of our own. Anyone who later wants a different interface speaks the same one.
  • Works without internet. Every library it needs ships with it. Inside a plant, in a tunnel or on an isolated network it behaves the same.
  • Interventions are gated. Reading is open to anyone. Changing a lifecycle state, switching a controller or moving an axis directly requires a role and is logged.
Licence

Open means open

The source is complete and public under Apache-2.0 at github.com/NEXOSGroup/nexos_ros2_status, part of the civil workspace nexos_ros2.

You may use it, change it and pass it on — commercially, and in the case where you stop working with us. That is the point: an operator who trusts us with a fleet should be able to run it later without us.

ros_status reads nothing but standard ROS 2 interfaces. It therefore runs not only on our platforms but on any ROS 2 system that carries the bridge and the agent.

Status

What stands and what follows

The seven views above are built and running. Plots for arbitrary numeric fields, coordinate frames, the node graph, alert rules with notification and a fleet view for several vehicles are planned. The order is in the ROADMAP in the repository — readable, not merely asserted.

What of it already carries in your project we will tell you specifically rather than promising it here.

Discuss requirements Back to software