mirror of
https://github.com/NawfalMotii79/PLFM_RADAR.git
synced 2026-06-08 22:47:16 +00:00
4a102e30fe
attemptErrorRecovery() previously fell through to the default log-only branch for both ERROR_AD9523_CLOCK and ERROR_FPGA_COMM. checkSystemHealth keeps re-firing the same error every pass with no recovery action ever attempted, so the system limps along until escalation kicks in. ERROR_AD9523_CLOCK: AD9523_RESET_ASSERT, 10 ms settle, then re-run configure_ad9523() (releases reset, selects REFB, reprograms, waits for lock). On second failure we log and let the next health pass re-fire so a transient brown-out on the 100 MHz reference does not drop straight into Emergency_Stop. ERROR_FPGA_COMM: pulse PD12 LOW->10 ms->HIGH (matches the boot reset pattern). PA rails left untouched at runtime; brief adar_tr_x undefined window is acceptable vs. losing the radar entirely. Added test_mcu_a6_recovery_dispatch (11 cases) covering both new handlers, all existing routes, the default branch, a pre-fix regression check, and an explicit assertion that RF_PA_OVERCURRENT escalates upstream (handleSystemError) rather than recovering inline. MCU regression now 80/80.