Repository Reference

This index maps current repository areas to their responsibilities. Generated data and public model or dataset cards are intentionally separated from source code.

Path Responsibility Notes
code/controller/current/ Live Jetson Orin Nano, Raspberry Pi 5, and Zero 2 W software Field runtime
code/controller/current/rc_car.py Minimal Raspberry Pi 5 controller entrypoint Model selection is on-device; no runtime --model flag
code/controller/current/rc_car_app/ Control loop, hardware, vision client, LiDAR, GPS, logging, dashboard sender Raspberry Pi 5-owned package
code/controller/current/rc_car_app/jetson_inference_server.py Unified steering-model inference server Runs Series 1/2 with PyTorch CUDA and Series 3/4 with ONNX Runtime CUDA on Jetson Orin Nano
code/controller/current/z2w_dashboard.py HUB75 dashboard receiver/renderer Runs on Zero 2 W
code/ai_models/ Local/Hugging Face PTH and ONNX models Binary model files are ignored by Git; preserve version names
code/ai_models_datasets/series_1_and_2/ Early direct-regression trainer and metadata 200x66 family
code/ai_models_datasets/series_3_and_4/ Series 3 trainer, six Series 4 wrappers, shared temporal code 320x180 families
code/test_files/models/evaluate_sidewalkpilot_models.py Common 52-checkpoint evaluator Produces JSON/PDF report
code/test_files/ Bench, calibration, setup, and regression utilities Not the live control loop
docs/site/ MkDocs source Edit this tree, not generated site/
docs/steering_model_report.pdf Generated comparison report 52 checkpoints
docs/steering_eval_current_labels.json Machine-readable report data Same evaluation run as PDF

Large image datasets, generated archives, model cards, and dataset cards are not tracked as ordinary GitHub source. Published models and datasets live on Hugging Face.

Runtime Starting Points

Need Start with
Control ownership and arbitration rc_car_app/runtime.py
Pins, thresholds, calibration rc_car_app/config.py
GPIO/PWM/PCA9685 writes rc_car_app/hardware.py
Model registry and Raspberry Pi 5 preprocessing rc_car_app/vision.py
Raspberry Pi 5 inference client and temporal-history state rc_car_app/jetson_client.py
Model loading and output decoding rc_car_app/jetson_inference_server.py
LiDAR packet parsing rc_car_app/lidar.py
LiDAR slowdown/brake policy rc_car_app/lidar_avoidance.py
GPS and graph routing rc_car_app/navigation.py
Dashboard telemetry rc_car_app/hub75_dashboard.py, z2w_dashboard.py

Verification

python3 -m py_compile code/controller/current/rc_car.py code/controller/current/z2w_dashboard.py
python3 -m compileall code/controller/current/rc_car_app

Configuration, Functions, and Flags

config.py is the source of truth for pins, thresholds, controller indices, model defaults, telemetry, and logging. runtime.py owns state and arbitration; hardware.py owns physical writes; vision.py owns camera/model selection and Raspberry Pi 5 preprocessing; jetson_client.py owns asynchronous inference requests and Series 4 steering history; lidar.py parses scans; lidar_avoidance.py computes longitudinal policy; navigation.py owns GPS/graph routing.

Do not treat a named constant as active without finding its current call site. Do not change a hardware mapping in a model, trainer, or dashboard layer. Public code-reference claims should name the owning file/function and be rechecked after refactors.

See Runtime Code, Training Pipeline, and Test Files.