don't show temp steering faults while overriding (#27797)

Co-authored-by: Comma Device <device@comma.ai>
old-commit-hash: e7c0db457a
beeps
Adeeb Shihadeh 2 years ago committed by GitHub
parent ea5f2caada
commit fd8e3d180d
  1. 17
      selfdrive/car/interfaces.py

@ -64,6 +64,7 @@ class CarInterfaceBase(ABC):
self.frame = 0
self.steering_unpressed = 0
self.low_speed_alert = False
self.no_steer_warning = False
self.silent_steer_warning = True
self.v_ego_cluster_seen = False
@ -278,13 +279,19 @@ class CarInterfaceBase(ABC):
# Handle permanent and temporary steering faults
self.steering_unpressed = 0 if cs_out.steeringPressed else self.steering_unpressed + 1
if cs_out.steerFaultTemporary:
# if the user overrode recently, show a less harsh alert
if self.silent_steer_warning or cs_out.standstill or self.steering_unpressed < int(1.5 / DT_CTRL):
self.silent_steer_warning = True
events.add(EventName.steerTempUnavailableSilent)
if cs_out.steeringPressed and (not self.CS.out.steerFaultTemporary or self.no_steer_warning):
self.no_steer_warning = True
else:
events.add(EventName.steerTempUnavailable)
self.no_steer_warning = False
# if the user overrode recently, show a less harsh alert
if self.silent_steer_warning or cs_out.standstill or self.steering_unpressed < int(1.5 / DT_CTRL):
self.silent_steer_warning = True
events.add(EventName.steerTempUnavailableSilent)
else:
events.add(EventName.steerTempUnavailable)
else:
self.no_steer_warning = False
self.silent_steer_warning = False
if cs_out.steerFaultPermanent:
events.add(EventName.steerUnavailable)

Loading…
Cancel
Save