diff --git a/selfdrive/car/ford/carstate.py b/selfdrive/car/ford/carstate.py index b768749325..dfa5c8f5bd 100644 --- a/selfdrive/car/ford/carstate.py +++ b/selfdrive/car/ford/carstate.py @@ -62,6 +62,8 @@ class CarState(CarStateBase): ret.cruiseState.nonAdaptive = cp.vl["Cluster_Info1_FD1"]["AccEnbl_B_RqDrv"] == 0 ret.cruiseState.standstill = cp.vl["EngBrakeData"]["AccStopMde_D_Rq"] == 3 ret.accFaulted = cp.vl["EngBrakeData"]["CcStat_D_Actl"] in (1, 2) + if not self.CP.openpilotLongitudinalControl: + ret.accFaulted = ret.accFaulted or cp_cam.vl["ACCDATA"]["CmbbDeny_B_Actl"] == 1 # gear if self.CP.transmissionType == TransmissionType.automatic: @@ -218,6 +220,8 @@ class CarState(CarStateBase): def get_cam_can_parser(CP): signals = [ # sig_name, sig_address + ("CmbbDeny_B_Actl", "ACCDATA"), # ACC/AEB unavailable/lockout + ("CmbbBrkDecel_B_Rq", "ACCDATA_2"), # AEB actuation request bit ("HaDsply_No_Cs", "ACCDATA_3"), @@ -264,6 +268,7 @@ class CarState(CarStateBase): checks = [ # sig_address, frequency + ("ACCDATA", 50), ("ACCDATA_2", 50), ("ACCDATA_3", 5), ("IPMA_Data", 1),