diff --git a/selfdrive/controls/controlsd.py b/selfdrive/controls/controlsd.py index 8024fc24e5..71fe6b99dc 100755 --- a/selfdrive/controls/controlsd.py +++ b/selfdrive/controls/controlsd.py @@ -140,6 +140,7 @@ class Controls: self.enabled = False self.active = False self.can_rcv_error = False + self.brake_pressed_prev = False self.soft_disable_timer = 0 self.v_cruise_kph = 255 self.v_cruise_kph_last = 0 @@ -194,8 +195,9 @@ class Controls: return # Disable on rising edge of gas or brake. Also disable on brake when speed > 0 - if (CS.gasPressed and self.active) or (CS.brakePressed and not CS.standstill): + if (CS.gasPressed and self.active) or (CS.brakePressed and (not self.brake_pressed_prev or not CS.standstill)): self.events.add(EventName.pedalPressed) + self.brake_pressed_prev = CS.brakePressed self.events.add_from_msg(CS.events) self.events.add_from_msg(self.sm['driverMonitoringState'].events)