System state daemon for the Odysseus on-car telemetry OS
This handles a variety of functions on the car, including security guarrantees, etc. These functions are considered modules.
Core principles:
- Each module should not bring down another (do not unwrap or expect, return error)
- Each module should use tracing when needed
- Each module should have an enable flag at a minimum, and be off by default
Modules
visual: Camera process manager and writer. Status: Alphalockdown: Feature disabler and modifier upon HV enablement. Status: Betaaudible: Call feature trigger and monitor. Status: Alphanumerical: Telemetry scraper and sender (tpu-telemetry python replacement). Status: Incompletenet: Network statistics telemetry scraper and sender for both TPU and Base Station. Status: Alphahalow: Hardware statistics telemetry scraper and sender for both TPU and Base Station. Status: Alphalogger: MQTT receiver and disk logger. Status: Betacolor: The wheel LED controller and API system. Status: Alphadaq: The Jack DAQ serial scraper. Status: Betacan: Diagnostics for the CANbus interface. Status: Alpha
Upload modules:
logger: Upload from the logger module to scylla. Status: Betavisual: Camera video uploader to cloud platform. Status: Incompleteserial: (fromlockdownmodule) Serial output uploader to cloud platform. Status Incomplete
This program will only run on Odysseus