GM camera ACC: prevent fault when engaging at a stop (#26079)

* prevent bolt fault

* comment

* only for camera ACC

* fixup alert

* bump cereal to master

* use new name

* Update selfdrive/car/gm/interface.py

* Update selfdrive/car/gm/interface.py

* Update selfdrive/car/gm/interface.py

* only care about prevent engagement when we look at PCM
old-commit-hash: 4e82f68de2
taco
Shane Smiskol 3 years ago committed by GitHub
parent 7512d184bc
commit 961c613005
  1. 2
      cereal
  2. 8
      selfdrive/car/gm/interface.py
  3. 4
      selfdrive/controls/lib/events.py

@ -1 +1 @@
Subproject commit 3eca747334ca2138bf35d70399d58d0706a3cbd2
Subproject commit 5766e645f2ee2a131b145fb1ea9e3b7c55a4a740

@ -212,7 +212,13 @@ class CarInterface(CarInterfaceBase):
if ret.cruiseState.standstill:
events.add(EventName.resumeRequired)
if ret.vEgo < self.CP.minSteerSpeed:
events.add(car.CarEvent.EventName.belowSteerSpeed)
events.add(EventName.belowSteerSpeed)
if self.CP.networkLocation == NetworkLocation.fwdCamera and self.CP.pcmCruise:
# The ECM has a higher brake pressed threshold than the camera, causing an
# ACC fault when you engage at a stop with your foot partially on the brake
if ret.vEgoRaw < 0.1 and ret.brake < 20:
events.add(EventName.gmAccFaultedTemp)
ret.events = events.to_msg()

@ -811,6 +811,10 @@ EVENTS: Dict[int, Dict[str, Union[Alert, AlertCallbackType]]] = {
ET.NO_ENTRY: NoEntryAlert("Cruise Faulted"),
},
EventName.gmAccFaultedTemp: {
ET.NO_ENTRY: NoEntryAlert("Cruise Temporarily Faulted"),
},
EventName.controlsMismatch: {
ET.IMMEDIATE_DISABLE: ImmediateDisableAlert("Controls Mismatch"),
ET.NO_ENTRY: NoEntryAlert("Controls Mismatch"),

Loading…
Cancel
Save