Fix up `radarFault` handling (#35880)

* fixup radarFault handling

* catch all

---------

Co-authored-by: Comma Device <device@comma.ai>
pull/35883/head
Adeeb Shihadeh 1 week ago committed by GitHub
parent 42ebab1334
commit 4d01b7bec8
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
  1. 2
      selfdrive/controls/lib/longitudinal_planner.py
  2. 13
      selfdrive/selfdrived/selfdrived.py
  3. 2
      selfdrive/test/process_replay/ref_commit

@ -178,7 +178,7 @@ class LongitudinalPlanner:
def publish(self, sm, pm): def publish(self, sm, pm):
plan_send = messaging.new_message('longitudinalPlan') 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 = plan_send.longitudinalPlan
longitudinalPlan.modelMonoTime = sm.logMonoTime['modelV2'] longitudinalPlan.modelMonoTime = sm.logMonoTime['modelV2']

@ -312,13 +312,12 @@ class SelfdriveD:
self.events.add(EventName.cameraFrameRate) self.events.add(EventName.cameraFrameRate)
if not REPLAY and self.rk.lagging: if not REPLAY and self.rk.lagging:
self.events.add(EventName.selfdrivedLagging) self.events.add(EventName.selfdrivedLagging)
if not self.sm.valid['radarState']: if self.sm['radarState'].radarErrors.canError:
if self.sm['radarState'].radarErrors.canError: self.events.add(EventName.canError)
self.events.add(EventName.canError) elif self.sm['radarState'].radarErrors.radarUnavailableTemporary:
elif self.sm['radarState'].radarErrors.radarUnavailableTemporary: self.events.add(EventName.radarTempUnavailable)
self.events.add(EventName.radarTempUnavailable) elif any(getattr(self.sm['radarState'].radarErrors, f) for f in self.sm['radarState'].radarErrors.schema.fields):
else: self.events.add(EventName.radarFault)
self.events.add(EventName.radarFault)
if not self.sm.valid['pandaStates']: if not self.sm.valid['pandaStates']:
self.events.add(EventName.usbError) self.events.add(EventName.usbError)
if CS.canTimeout: if CS.canTimeout:

@ -1 +1 @@
c289a0359d1b1f26cf4d9e73a2c04b2bbfec840f 7ecabd09f1f07c784806639114881fb6341be06c
Loading…
Cancel
Save