From 4d01b7bec840fefffc20e220c5f4a6dfe4b2d7ea Mon Sep 17 00:00:00 2001 From: Adeeb Shihadeh Date: Fri, 1 Aug 2025 16:27:26 -0700 Subject: [PATCH] Fix up `radarFault` handling (#35880) * fixup radarFault handling * catch all --------- Co-authored-by: Comma Device --- selfdrive/controls/lib/longitudinal_planner.py | 2 +- selfdrive/selfdrived/selfdrived.py | 13 ++++++------- selfdrive/test/process_replay/ref_commit | 2 +- 3 files changed, 8 insertions(+), 9 deletions(-) diff --git a/selfdrive/controls/lib/longitudinal_planner.py b/selfdrive/controls/lib/longitudinal_planner.py index ba622416ac..0fbcfa25ba 100755 --- a/selfdrive/controls/lib/longitudinal_planner.py +++ b/selfdrive/controls/lib/longitudinal_planner.py @@ -178,7 +178,7 @@ class LongitudinalPlanner: def publish(self, sm, pm): plan_send = messaging.new_message('longitudinalPlan') - plan_send.valid = sm.all_checks(service_list=['carState', 'controlsState', 'selfdriveState']) + plan_send.valid = sm.all_checks(service_list=['carState', 'controlsState', 'selfdriveState', 'radarState']) longitudinalPlan = plan_send.longitudinalPlan longitudinalPlan.modelMonoTime = sm.logMonoTime['modelV2'] diff --git a/selfdrive/selfdrived/selfdrived.py b/selfdrive/selfdrived/selfdrived.py index e43a25f409..ce03b44571 100755 --- a/selfdrive/selfdrived/selfdrived.py +++ b/selfdrive/selfdrived/selfdrived.py @@ -312,13 +312,12 @@ class SelfdriveD: self.events.add(EventName.cameraFrameRate) if not REPLAY and self.rk.lagging: self.events.add(EventName.selfdrivedLagging) - if not self.sm.valid['radarState']: - if self.sm['radarState'].radarErrors.canError: - self.events.add(EventName.canError) - elif self.sm['radarState'].radarErrors.radarUnavailableTemporary: - self.events.add(EventName.radarTempUnavailable) - else: - self.events.add(EventName.radarFault) + if self.sm['radarState'].radarErrors.canError: + self.events.add(EventName.canError) + elif self.sm['radarState'].radarErrors.radarUnavailableTemporary: + self.events.add(EventName.radarTempUnavailable) + elif any(getattr(self.sm['radarState'].radarErrors, f) for f in self.sm['radarState'].radarErrors.schema.fields): + self.events.add(EventName.radarFault) if not self.sm.valid['pandaStates']: self.events.add(EventName.usbError) if CS.canTimeout: diff --git a/selfdrive/test/process_replay/ref_commit b/selfdrive/test/process_replay/ref_commit index 92669bec5c..7c49100fef 100644 --- a/selfdrive/test/process_replay/ref_commit +++ b/selfdrive/test/process_replay/ref_commit @@ -1 +1 @@ -c289a0359d1b1f26cf4d9e73a2c04b2bbfec840f \ No newline at end of file +7ecabd09f1f07c784806639114881fb6341be06c \ No newline at end of file