{ "$comment": "Single source for signal identity. Topic name and envelope unit are both derived from these entries and are never authored separately. source=obd2 is standardised; source=host is the Orin itself (orin-status), not the car. source=z27ag is reverse-engineered from the car's own broadcast frames, and its 'can' block is the only place its layout is written down: id (11-bit, hex string), byte (first data byte, 0-7), length in bits (1, 8 or 16), bit (length 1 only: 0 = LSB of that byte), order (length 16: big = byte first is most significant, little = the reverse), scale and offset (value = raw * scale + offset; booleans are raw != 0). 'evidence' names the contracts report that found it.", "signals": { "engine_rpm": { "unit": "rpm", "type": "number", "source": "z27ag", "description": "Engine speed", "range": [ 0, 8000 ], "can": { "id": "0x210", "byte": 4, "length": 16, "order": "big", "scale": 1, "offset": 0, "evidence": "Z27AG-DECODE-1" } }, "vehicle_speed_kph": { "unit": "kph", "type": "number", "source": "obd2", "description": "Road speed", "range": [ 0, 255 ] }, "coolant_temp_c": { "unit": "celsius", "type": "number", "source": "obd2", "description": "Engine coolant temperature", "range": [ -40, 215 ] }, "intake_air_temp_c": { "unit": "celsius", "type": "number", "source": "obd2", "description": "Intake air temperature", "range": [ -40, 215 ] }, "throttle_pct": { "unit": "percent", "type": "number", "source": "obd2", "description": "Throttle position", "range": [ 0, 100 ] }, "engine_load_pct": { "unit": "percent", "type": "number", "source": "obd2", "description": "Calculated engine load", "range": [ 0, 100 ] }, "fuel_level_pct": { "unit": "percent", "type": "number", "source": "obd2", "description": "Fuel tank level", "range": [ 0, 100 ] }, "intake_pressure_kpa": { "unit": "kpa", "type": "number", "source": "obd2", "description": "Intake manifold absolute pressure", "range": [ 0, 255 ] }, "maf_gps": { "unit": "g/s", "type": "number", "source": "obd2", "description": "Mass air flow rate", "range": [ 0, 656 ] }, "accel_pedal_pct": { "unit": "percent", "type": "number", "source": "z27ag", "description": "Accelerator pedal position (0x00 at rest, 0xFA flat)", "range": [ 0, 100 ], "can": { "id": "0x210", "byte": 0, "length": 8, "scale": 0.4, "offset": 0, "evidence": "Z27AG-DECODE-1" } }, "brake_pedal": { "unit": "", "type": "boolean", "source": "z27ag", "description": "Brake pedal switch: pressed", "can": { "id": "0x231", "byte": 4, "bit": 1, "length": 1, "evidence": "Z27AG-DECODE-1" } }, "handbrake": { "unit": "", "type": "boolean", "source": "z27ag", "description": "Handbrake applied", "can": { "id": "0x239", "byte": 0, "bit": 2, "length": 1, "evidence": "Z27AG-DECODE-1" } }, "indicator_left": { "unit": "", "type": "boolean", "source": "z27ag", "description": "Left indicator lamp, as it flashes (on and off at the flasher's rate)", "can": { "id": "0x423", "byte": 2, "bit": 6, "length": 1, "evidence": "Z27AG-DECODE-1" } }, "indicator_right": { "unit": "", "type": "boolean", "source": "z27ag", "description": "Right indicator lamp, as it flashes. Hazards were seen on the left bit only: open", "can": { "id": "0x423", "byte": 2, "bit": 5, "length": 1, "evidence": "Z27AG-DECODE-1" } }, "side_lights": { "unit": "", "type": "boolean", "source": "z27ag", "description": "Side (position) lights on; also on with dipped beam", "can": { "id": "0x423", "byte": 2, "bit": 2, "length": 1, "evidence": "Z27AG-DECODE-1" } }, "dipped_beam": { "unit": "", "type": "boolean", "source": "z27ag", "description": "Dipped headlights on", "can": { "id": "0x423", "byte": 3, "bit": 1, "length": 1, "evidence": "Z27AG-DECODE-1" } }, "door_open": { "unit": "", "type": "boolean", "source": "z27ag", "description": "Any door open", "can": { "id": "0x423", "byte": 2, "bit": 1, "length": 1, "evidence": "Z27AG-DECODE-1" } }, "driver_door_open": { "unit": "", "type": "boolean", "source": "z27ag", "description": "Driver's door open", "can": { "id": "0x423", "byte": 0, "bit": 4, "length": 1, "evidence": "Z27AG-DECODE-1" } }, "ac_compressor": { "unit": "", "type": "boolean", "source": "z27ag", "description": "A/C compressor engaged (engine running)", "can": { "id": "0x13D", "byte": 6, "bit": 7, "length": 1, "evidence": "Z27AG-DECODE-1" } }, "orin_cpu_temp_c": { "unit": "celsius", "type": "number", "source": "host", "description": "Orin CPU cluster temperature", "range": [ -40, 110 ] }, "orin_gpu_temp_c": { "unit": "celsius", "type": "number", "source": "host", "description": "Orin GPU temperature", "range": [ -40, 110 ] }, "orin_soc_temp_c": { "unit": "celsius", "type": "number", "source": "host", "description": "Orin SoC temperature, hottest of its sensors", "range": [ -40, 110 ] }, "orin_tj_temp_c": { "unit": "celsius", "type": "number", "source": "host", "description": "Orin junction temperature: the hottest point on the die, which throttling acts on", "range": [ -40, 110 ] }, "orin_cpu_pct": { "unit": "percent", "type": "number", "source": "host", "description": "CPU utilisation, all cores", "range": [ 0, 100 ] }, "orin_gpu_pct": { "unit": "percent", "type": "number", "source": "host", "description": "GPU utilisation", "range": [ 0, 100 ] }, "orin_ram_used_mb": { "unit": "MB", "type": "number", "source": "host", "description": "Memory in use, CPU and GPU together (one shared pool): total minus available", "range": [ 0, 8192 ] }, "orin_ram_used_pct": { "unit": "percent", "type": "number", "source": "host", "description": "Memory in use as a share of the total", "range": [ 0, 100 ] }, "orin_swap_used_mb": { "unit": "MB", "type": "number", "source": "host", "description": "Swap in use", "range": [ 0, 16384 ] }, "orin_power_w": { "unit": "W", "type": "number", "source": "host", "description": "Orin module input power (VDD_IN), from the onboard INA3221", "range": [ 0, 30 ] }, "orin_fan_rpm": { "unit": "rpm", "type": "number", "source": "host", "description": "Cooling fan speed", "range": [ 0, 10000 ] }, "net_wifi_up": { "unit": "", "type": "boolean", "source": "host", "description": "WiFi associated and up" }, "net_wifi_ssid": { "unit": "", "type": "string", "source": "host", "description": "Network name (SSID) of the WiFi the Orin is associated with; not sent while WiFi is down" }, "net_wifi_signal_dbm": { "unit": "dBm", "type": "number", "source": "host", "description": "WiFi signal level", "range": [ -100, 0 ] }, "net_wifi_rx_kbps": { "unit": "kbit/s", "type": "number", "source": "host", "description": "WiFi receive rate (into the Orin)", "range": [ 0, 1000000 ] }, "net_wifi_tx_kbps": { "unit": "kbit/s", "type": "number", "source": "host", "description": "WiFi transmit rate (out of the Orin)", "range": [ 0, 1000000 ] }, "net_lte_state": { "unit": "", "type": "string", "source": "host", "description": "Modem state as ModemManager reports it (connected, registered, searching, disabled, …), or absent with no modem" }, "net_lte_tech": { "unit": "", "type": "string", "source": "host", "description": "Access technology in use (lte, umts, …); empty when not registered" }, "net_lte_signal_pct": { "unit": "percent", "type": "number", "source": "host", "description": "Modem signal quality", "range": [ 0, 100 ] }, "net_lte_rx_kbps": { "unit": "kbit/s", "type": "number", "source": "host", "description": "LTE receive rate (into the Orin)", "range": [ 0, 150000 ] }, "net_lte_tx_kbps": { "unit": "kbit/s", "type": "number", "source": "host", "description": "LTE transmit rate (out of the Orin)", "range": [ 0, 50000 ] }, "net_tablet_up": { "unit": "", "type": "boolean", "source": "host", "description": "USB link to the tablet has carrier" }, "net_tablet_rx_kbps": { "unit": "kbit/s", "type": "number", "source": "host", "description": "USB tablet link, tablet to Orin", "range": [ 0, 480000 ] }, "net_tablet_tx_kbps": { "unit": "kbit/s", "type": "number", "source": "host", "description": "USB tablet link, Orin to tablet", "range": [ 0, 480000 ] }, "can_up": { "unit": "", "type": "boolean", "source": "host", "description": "The recorder's CAN interface (the PEAK, can_pcan) is present and up; false when absent or down" }, "can_bus_state": { "unit": "", "type": "string", "source": "host", "description": "CAN controller state: ERROR-ACTIVE (normal), ERROR-WARNING, ERROR-PASSIVE, BUS-OFF, STOPPED (down), or absent with no adapter" }, "can_rx_fps": { "unit": "frames/s", "type": "number", "source": "host", "description": "CAN frames received per second on that interface", "range": [ 0, 10000 ] }, "ups_battery_v": { "unit": "V", "type": "number", "source": "host", "description": "UPS battery pack voltage (3S Li-ion, 9.0–12.6 V)", "range": [ 0, 16 ] }, "ups_current_a": { "unit": "A", "type": "number", "source": "host", "description": "UPS battery current: positive charging, negative discharging", "range": [ -5, 5 ] }, "ups_battery_pct": { "unit": "percent", "type": "number", "source": "host", "description": "UPS charge estimate from cell voltage, corrected for load. An estimate, steadiest at rest", "range": [ 0, 100 ] }, "ups_state": { "unit": "", "type": "string", "source": "host", "description": "charging, discharging (running on battery) or idle (on input power, not charging)" } } }