b52a7dcedb
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01DDwfd6Ki8UfG4hK6W5YpJz
83 lines
3.0 KiB
JSON
83 lines
3.0 KiB
JSON
{
|
|
"root": "yukart",
|
|
"topics": {
|
|
"yukart/can/raw": {
|
|
"payload": "binary",
|
|
"retained": false,
|
|
"rate": "1000-3000/s",
|
|
"publisher": "can-bridge",
|
|
"description": "Timestamped raw frames. Binary, not the JSON envelope."
|
|
},
|
|
"yukart/vehicle/<signal>": {
|
|
"payload": "envelope",
|
|
"retained": true,
|
|
"rate": "1-50/s",
|
|
"publisher": "decoder (source z27ag), obd-poller (source obd2)",
|
|
"description": "One topic per signal, named exactly as in signals.json."
|
|
},
|
|
"yukart/gnss/fix": {
|
|
"payload": "envelope",
|
|
"retained": true,
|
|
"rate": "1-10/s",
|
|
"publisher": "gnss",
|
|
"description": "value is an object: lat, lon, alt_m, speed_kph, heading_deg, fix, satellites."
|
|
},
|
|
"yukart/gnss/<signal>": {
|
|
"payload": "envelope",
|
|
"retained": true,
|
|
"rate": "1-10/s",
|
|
"publisher": "gnss",
|
|
"description": "The receiver's fix as single values, one topic per signal, named exactly as in signals.json (source=gnss). For displays; yukart/gnss/fix stays the composite for navigation."
|
|
},
|
|
"yukart/imu/<signal>": {
|
|
"payload": "envelope",
|
|
"retained": true,
|
|
"rate": "10-50/s",
|
|
"publisher": "imu",
|
|
"description": "The IMU (WT61) in the car's frame: attitude, gravity-free acceleration, yaw rate; one topic per signal, named exactly as in signals.json (source=imu)."
|
|
},
|
|
"yukart/raw/imu": {
|
|
"payload": "json",
|
|
"retained": false,
|
|
"rate": "10-100/s",
|
|
"publisher": "imu",
|
|
"description": "Every IMU sample, raw: module axes, not calibrated. {mono (ns, CLOCK_MONOTONIC), t (µs, realtime), accel [x,y,z] g, gyro [x,y,z] deg/s, angle [roll,pitch,yaw] deg (the module's own)}. Not an envelope; for the recorder (imu.ndjson), so a later calibration can reprocess a session. Displays use yukart/imu/<signal>."
|
|
},
|
|
"yukart/host/<signal>": {
|
|
"payload": "envelope",
|
|
"retained": true,
|
|
"rate": "1/s",
|
|
"publisher": "orin-status",
|
|
"description": "The Orin itself: temperatures, load, memory, network links, UPS battery. One topic per signal, named exactly as in signals.json (source=host)."
|
|
},
|
|
"yukart/system/<service>": {
|
|
"payload": "json",
|
|
"retained": true,
|
|
"rate": "on change",
|
|
"publisher": "every service",
|
|
"description": "state: starting|ready|degraded|stopping, plus service-specific detail."
|
|
},
|
|
"yukart/nav/guidance": {
|
|
"payload": "json",
|
|
"retained": true,
|
|
"rate": "on change",
|
|
"publisher": "svc-nav",
|
|
"description": "Next manoeuvre, distance, street name."
|
|
},
|
|
"yukart/nav/route": {
|
|
"payload": "json",
|
|
"retained": true,
|
|
"rate": "on change",
|
|
"publisher": "svc-nav",
|
|
"description": "Active route geometry."
|
|
},
|
|
"yukart/session/mark": {
|
|
"payload": "json",
|
|
"retained": false,
|
|
"rate": "human",
|
|
"publisher": "svc-gw",
|
|
"description": "Operator event stamped into the recording. Carries both clocks like the envelope."
|
|
}
|
|
}
|
|
}
|