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
This commit is contained in:
Shane Smiskol
2022-10-14 22:21:53 -07:00
committed by GitHub
parent 91a7bb4ea3
commit 4e82f68de2
3 changed files with 12 additions and 2 deletions

2
cereal

Submodule cereal updated: 3eca747334...5766e645f2

View File

@@ -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()

View File

@@ -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"),