Skip to content

Telemetry

The agent collects telemetry from your robot locally and forwards it to the Rover Nexus cloud.

How ingest works

Your robot software publishes data onto a local Zenoh network using the Cap'n Proto wire format. The agent subscribes to those messages, decodes them, and keeps the latest robot state in memory.

If you run a ROS 2 system, an external bridge translates your ROS 2 topics to and from the same local-Zenoh Cap'n Proto topics the agent consumes. See Set up the ROS 2 bridge and ROS 2 bridge.

From the ingested data, the agent maintains the latest robot state and forwards it — motion, status, faults and events, and other assets — to the cloud over the agent's secure (mTLS) link. Faults and events also surface in the fleet manager (see Health monitoring).

For the full list of message types, see Telemetry messaging and Map telemetry.

Rate limiting

To keep bandwidth and load predictable, the agent rate-limits uplink per message type. Each type (motion, status, extras, and so on) has its own publish cadence, so a fast-changing stream from the robot is sampled down to a steady rate before it leaves the robot. This means:

  • The cloud sees a consistent update rate rather than raw firehose data.
  • High-frequency local data does not overwhelm the uplink.
  • Distinct message types are limited independently, so a busy stream of one type does not starve another.

Published per-type rate limit values are coming soon; for current defaults, contact [email protected].

Local persistence

Some incoming assets are also stored in the agent's local SQLite database so they survive restarts — for example scheduled missions, features, objects, and settings. See Configuration for the database location.