What it is
The plan is phased: remote drive-by-wire first, then autonomy with a safety driver in the seat, and only much later unmanned operation. Three rules shape the design:
- Software is never in the kill path. A hardware E-stop loop opens a contactor that cuts 12 V from every actuator at once.
- One source of truth. The same CAN protocol header serves both firmwares and the Python bridges, and one parameter file defines the real cart and the simulated one.
- Sim first. Autonomy code is written against the twin, whose bridge runs the same DISENGAGED, ARMED, ACTIVE, FAULT state machine as the firmware, so one topic drives either.
Where it stands
| Track | State |
|---|---|
| Steering under computer control | Done on the bench, over CAN |
| Braking under computer control | Done on the bench; pedal linkage still to do |
| Gamepad drive | Working on the bench |
| ROS to firmware integration over CAN | Planned |
| Throttle by wire | Designed, not built |
| Sensors on the cart | Not mounted; modelled in sim only |
| Perception, localization, planning | Sim only |
| Driving metrics | None yet: the cart hasn't driven itself |
As of the repo's last status check, July 2026.



