From 26d4baca74f5ca77e582a39fa4906e86c83ddd7d Mon Sep 17 00:00:00 2001 From: Jason Wen Date: Tue, 24 Sep 2024 17:20:44 -0400 Subject: [PATCH 1/2] Ford: Parse Lane Centering button from steering wheel --- opendbc/car/ford/carstate.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/opendbc/car/ford/carstate.py b/opendbc/car/ford/carstate.py index 8b631e8dee..02eae18820 100644 --- a/opendbc/car/ford/carstate.py +++ b/opendbc/car/ford/carstate.py @@ -19,6 +19,7 @@ def __init__(self, CP): self.shifter_values = can_define.dv["PowertrainData_10"]["TrnRng_D_Rq"] self.distance_button = 0 + self.lc_button = 0 def update(self, cp, cp_cam, *_) -> structs.CarState: ret = structs.CarState() @@ -86,7 +87,9 @@ def update(self, cp, cp_cam, *_) -> structs.CarState: # TODO: block this going to the camera otherwise it will enable stock TJA ret.genericToggle = bool(cp.vl["Steering_Data_FD1"]["TjaButtnOnOffPress"]) prev_distance_button = self.distance_button + prev_lc_button = self.lc_button self.distance_button = cp.vl["Steering_Data_FD1"]["AccButtnGapTogglePress"] + self.lc_button = bool(cp.vl["Steering_Data_FD1"]["TjaButtnOnOffPress"]) # lock info ret.doorOpen = any([cp.vl["BodyInfo_3_FD1"]["DrStatDrv_B_Actl"], cp.vl["BodyInfo_3_FD1"]["DrStatPsngr_B_Actl"], @@ -105,7 +108,10 @@ def update(self, cp, cp_cam, *_) -> structs.CarState: self.acc_tja_status_stock_values = cp_cam.vl["ACCDATA_3"] self.lkas_status_stock_values = cp_cam.vl["IPMA_Data"] - ret.buttonEvents = create_button_events(self.distance_button, prev_distance_button, {1: ButtonType.gapAdjustCruise}) + ret.buttonEvents = [ + *create_button_events(self.distance_button, prev_distance_button, {1: ButtonType.gapAdjustCruise}), + *create_button_events(self.lc_button, prev_lc_button, {1: ButtonType.altButton1}), + ] return ret From c065acdea05a420b88abb2ae7dca53a8d220435d Mon Sep 17 00:00:00 2001 From: Jason Wen Date: Sun, 23 Feb 2025 17:10:47 -0800 Subject: [PATCH 2/2] fix name --- opendbc/car/ford/carstate.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/opendbc/car/ford/carstate.py b/opendbc/car/ford/carstate.py index 4710cf5311..b273137af1 100644 --- a/opendbc/car/ford/carstate.py +++ b/opendbc/car/ford/carstate.py @@ -115,7 +115,7 @@ def update(self, can_parsers) -> structs.CarState: ret.buttonEvents = [ *create_button_events(self.distance_button, prev_distance_button, {1: ButtonType.gapAdjustCruise}), - *create_button_events(self.lc_button, prev_lc_button, {1: ButtonType.altButton1}), + *create_button_events(self.lc_button, prev_lc_button, {1: ButtonType.lkas}), ] return ret