mirror of
https://github.com/firestar5683/StarPilot.git
synced 2026-09-01 21:53:42 +08:00
8d23733946
is_bosch_a_radar_car() and its downstream handling in radard.py never landed alongside the radar decoder (interface.py/values.py/radar_interface.py) -- without it, the newly-decoded Bosch-A radar points feed into radard's generic path, which assumes the wrong Kalman filter timestep and is missing a real staleness/freshness gate this radar's actual cadence needs. Ports (unmodified in behavior, only renamed to match this repo's HONDA_BOSCH_A / HONDA_BOSCH_A_RADAR_VERIFIED naming instead of "civic_bosch"): - Kalman filter dt selected from the radar's real ~15Hz cadence (HONDA_BOSCH_A_RADAR_TS), not the ~20Hz model-cycle default - measurement_update gating so a duplicate liveTracks payload (radar runs slower than the model loop) isn't absorbed twice by the KF - a "preferred track" continuity path: a previously-selected lead stays selected through ordinary model-probability fluctuations as long as it's still coherent, instead of re-arbitrating from scratch every cycle - staleness detection with two independent triggers (a better-scoring challenger track sustained over several cycles, or gross absolute-range disagreement with the model sustained over several cycles) that drops a stale preferred track rather than holding it indefinitely - honda_bosch_a_low_speed_radar_lead_sane(), requiring a few real sweeps before a radar-only low-speed takeover Tested on the branch this was developed on (109/109 relevant tests pass); this port is a mechanical, unmodified transplant onto this repo's current radard.py -- worth a run through this repo's own test suite before merge. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>