Files
clearpilot/selfdrive
brianhansonxyz aac5f9d264 controlsd: gate park mode behind init + 10s post-init delay
Park mode is now suppressed until two things happen:
1. self.initialized flips True (controlsd's normal init path runs and
   calls self.card.initialize() — which is what wires CarInterface up
   so controls_update actually generates CAN sends).
2. 10 s of normal step() execution after init completes.

Without (1), park_mode_tick's controls_update was a silent no-op — the
"keepalive heartbeat" never reached the car's ECU, and downstream
publishes (carState, carParams, carOutput) never went out either,
which is why the UI was stuck on the splash even after a gear shift
to drive (scene.parked reads the same carState that wasn't being
published).

The 10 s buffer (2) also gives all only_onroad_active processes a
clean cold-start window before manager starts pausing them — no
risk of catching them mid-init when ParkMode flips on.
2026-05-04 19:48:14 -05:00
..