From 1d41c33d85865d4a9ab50b43ec944a07027864be Mon Sep 17 00:00:00 2001 From: janpoo6427 Date: Wed, 10 Jun 2026 17:25:02 +0900 Subject: [PATCH 1/5] trailer dbc and parser Update trailer test Refactor code structure for improved readability and maintainability Add trailer status handling and suppress LFA cluster warnings for connected trailers Suppress trailer mode steering assist alerts --- opendbc_repo/opendbc/car/hyundai/carstate.py | 71 ++- .../opendbc/car/hyundai/hyundaicanfd.py | 38 +- .../dbc/generator/hyundai/hyundai_canfd.dbc | 433 +++++++++--------- tools/cabana/cabana | 0 tools/op.sh | 0 tools/setup_dependencies.sh | 0 6 files changed, 291 insertions(+), 251 deletions(-) mode change 100644 => 100755 tools/cabana/cabana mode change 100644 => 100755 tools/op.sh mode change 100644 => 100755 tools/setup_dependencies.sh diff --git a/opendbc_repo/opendbc/car/hyundai/carstate.py b/opendbc_repo/opendbc/car/hyundai/carstate.py index bbd6706aab9..94b936f0131 100644 --- a/opendbc_repo/opendbc/car/hyundai/carstate.py +++ b/opendbc_repo/opendbc/car/hyundai/carstate.py @@ -88,19 +88,19 @@ def __init__(self, CP): self.scc14 = None self.lkas11 = None self.clu11 = None - + # for CANFD parsing - self.scc_control = None - self.lfa = None - self.lfa_alt = None - self.lfahda_cluster = None + self.scc_control = None + self.lfa = None + self.lfa_alt = None + self.lfahda_cluster = None self.adrv_0x161 = None self.adrv_0x200 = None self.adrv_0x1ea = None self.adrv_0x160 = None - self.ccnc_0x162 = None - self.hda_info_4a3 = None - self.tcs = None + self.ccnc_0x162 = None + self.hda_info_4a3 = None + self.tcs = None self.mdps = None self.steer_touch_2af = None self.cruise_buttons_msg = None @@ -146,7 +146,7 @@ def __init__(self, CP): if self.CP.openpilotLongitudinalControl and not (self.CP.flags & HyundaiFlags.CANFD_CAMERA_SCC): ecu_disabled = True - + self.HAS_LFA_BUTTON = True if 913 in fingerprints[0] else False self.CRUISE_BUTTON_ALT = True if 1007 in fingerprints[0] else False @@ -160,12 +160,18 @@ def __init__(self, CP): self.cp_bsm = None self.time_zone = "UTC" - + self.cp = None self.cp_cam = None self.cp_alt = None self.controls_ready_count = 0 + # trailer detection + self.trailer_connected = False + self.trailer_timeout_cnt = 0 + self.trailer_connected_prev = False + self.trailer_status = None + def monitor_fingerprint(self, can_parsers, canfd): if self.controls_ready_count <= READY_COUNT_OK: if Params().get_bool("ControlsReady"): @@ -192,7 +198,7 @@ def add_and_cache(parser, name: str, attr: str, ignore_counter: bool = False): setattr(self, attr, parser.vl[name]) return True return False - + if self.controls_ready_count == 50: self.cp.controls_ready = self.cp_cam.controls_ready = True if self.cp_alt is not None: @@ -215,7 +221,7 @@ def add_and_cache(parser, name: str, attr: str, ignore_counter: bool = False): if not add_and_cache(self.cp_cam, "FCA11", "fca11"): add_and_cache(self.cp, "FCA11", "fca11") add_and_cache(self.cp_cam, "LKAS11", "lkas11") - add_and_cache(self.cp, "CLU11", "clu11") + add_and_cache(self.cp, "CLU11", "clu11") elif self.controls_ready_count == 105: cp_cruise = self.cp_cam if self.CP.flags & HyundaiFlags.CAMERA_SCC else self.cp add_and_cache(cp_cruise, "SCC11", "scc11") @@ -225,20 +231,20 @@ def add_and_cache(parser, name: str, attr: str, ignore_counter: bool = False): else: # canfd if self.controls_ready_count == 120: cp_cruise = self.cp_cam if self.CP.flags & HyundaiFlags.CANFD_CAMERA_SCC else self.cp - add_and_cache(cp_cruise, "SCC_CONTROL", "scc_control") + add_and_cache(cp_cruise, "SCC_CONTROL", "scc_control") elif self.controls_ready_count == 121: add_and_cache(self.cp, "TCS", "tcs") add_and_cache(self.cp, "MDPS", "mdps") add_and_cache(self.cp_cam, "LFA", "lfa") - add_and_cache(self.cp_cam, "LFA_ALT", "lfa_alt") + add_and_cache(self.cp_cam, "LFA_ALT", "lfa_alt") add_and_cache(self.cp_cam, "LFAHDA_CLUSTER", "lfahda_cluster") elif self.controls_ready_count == 122: - add_and_cache(self.cp_cam, "ADRV_0x161", "adrv_0x161") + add_and_cache(self.cp_cam, "ADRV_0x161", "adrv_0x161") add_and_cache(self.cp_cam, "ADRV_0x200", "adrv_0x200") add_and_cache(self.cp_cam, "ADRV_0x1ea", "adrv_0x1ea") add_and_cache(self.cp_cam, "ADRV_0x160", "adrv_0x160") add_and_cache(self.cp_cam, "CCNC_0x162", "ccnc_0x162") - elif self.controls_ready_count == 123: + elif self.controls_ready_count == 123: add_and_cache(self.cp, "HDA_INFO_4A3", "hda_info_4a3") add_and_cache(self.cp, "STEER_TOUCH_2AF", "steer_touch_2af") elif self.controls_ready_count == 124: @@ -256,11 +262,12 @@ def add_and_cache(parser, name: str, attr: str, ignore_counter: bool = False): add_and_cache(self.cp, "DOORS_SEATBELTS", "doors_seatbelts") elif self.controls_ready_count == 126: add_and_cache(self.cp, "CRUISE_BUTTONS_ALT2", "cruise_buttons_alt2", ignore_counter = True) - - - - - + add_and_cache(self.cp, "TRAILER_STATUS", "trailer_status", ignore_counter = True) + + + + + def update(self, can_parsers) -> structs.CarState: self.monitor_fingerprint(can_parsers, self.CP.flags & HyundaiFlags.CANFD) cp = can_parsers[Bus.pt] @@ -504,7 +511,7 @@ def update_canfd(self, can_parsers) -> structs.CarState: if self.doors_seatbelts is not None: ret.doorOpen = self.doors_seatbelts["DRIVER_DOOR"] == 1 ret.seatbeltUnlatched = self.doors_seatbelts["DRIVER_SEATBELT"] == 0 - + gear = cp.vl[self.gear_msg_canfd]["GEAR"] if not self.use_accelerator else 0 if self.accelerator is None else self.accelerator["GEAR"] ret.gearShifter = self.parse_gear_shifter(self.shifter_values.get(gear)) @@ -537,7 +544,19 @@ def update_canfd(self, can_parsers) -> structs.CarState: ret.steeringAngleDeg = cp.vl["MDPS"]["STEERING_ANGLE_2"] * -1 else: ret.steeringAngleDeg = cp.vl["STEERING_SENSORS"]["STEERING_ANGLE"] * -1 - + + if self.trailer_status is not None: + self.trailer_timeout_cnt = 0 + self.trailer_connected = self.trailer_status["TRAILER_CONNECTED"] != 0 + else: + self.trailer_timeout_cnt += 1 + if self.trailer_timeout_cnt > 50: + self.trailer_connected = False + + if self.trailer_connected != self.trailer_connected_prev: + print(f"[TRAILER_DEBUG] connected={self.trailer_connected} timeout={self.trailer_timeout_cnt}") + self.trailer_connected_prev = self.trailer_connected + ret.steeringTorque = cp.vl["MDPS"]["STEERING_COL_TORQUE"] ret.steeringTorqueEps = cp.vl["MDPS"]["STEERING_OUT_TORQUE"] ret.steeringPressed = self.update_steering_pressed(abs(ret.steeringTorque) > self.params.STEER_THRESHOLD, 5) @@ -576,7 +595,7 @@ def update_canfd(self, can_parsers) -> structs.CarState: self.MainMode_ACC = cp_cam.vl["SCC_CONTROL"]["MainMode_ACC"] == 1 self.ACCMode = cp_cam.vl["SCC_CONTROL"]["ACCMode"] self.LFA_ICON = cp_cam.vl["LFAHDA_CLUSTER"]["HDA_LFA_SymSta"] - + if self.CP.openpilotLongitudinalControl: # These are not used for engage/disengage since openpilot keeps track of state using the buttons ret.cruiseState.enabled = cp.vl["TCS"]["ACC_REQ"] == 1 @@ -615,7 +634,7 @@ def update_canfd(self, can_parsers) -> structs.CarState: ret.leftBlindspot = True if right_block: ret.rightBlindspot = True - + if self.hda_info_4a3 is not None: speedLimit = self.hda_info_4a3["SPEED_LIMIT"] if not self.is_metric: @@ -726,6 +745,7 @@ def update_canfd(self, can_parsers) -> structs.CarState: *create_button_events(self.main_buttons[-1], prev_main_buttons, {1: ButtonType.mainCruise})] self.paddle_button_prev = paddle_button + return ret def get_can_parsers_canfd(self, CP): @@ -735,6 +755,7 @@ def get_can_parsers_canfd(self, CP): msgs += [ ("CRUISE_BUTTONS", 50) ] + return { Bus.pt: CANParser(DBC[CP.carFingerprint][Bus.pt], msgs, CanBus(CP).ECAN), Bus.cam: CANParser(DBC[CP.carFingerprint][Bus.pt], [], CanBus(CP).CAM), diff --git a/opendbc_repo/opendbc/car/hyundai/hyundaicanfd.py b/opendbc_repo/opendbc/car/hyundai/hyundaicanfd.py index b32ea1579f3..a2102a51df3 100644 --- a/opendbc_repo/opendbc/car/hyundai/hyundaicanfd.py +++ b/opendbc_repo/opendbc/car/hyundai/hyundaicanfd.py @@ -127,7 +127,7 @@ def create_steering_messages_camera_scc(frame, packer, CP, CAN, CC, lat_active, if CS.lfa_alt is not None: values = copy.copy(CS.lfa_alt) rx_counter = values.pop("COUNTER", None) - if emergency_steering: + if emergency_steering: pass else: #values = {} #CS.lfa_alt @@ -164,7 +164,7 @@ def create_steering_messages_camera_scc(frame, packer, CP, CAN, CC, lat_active, values["HAS_LANE_SAFETY"] = 0 values["LKA_ACTIVE"] = 0 # NEW_SIGNAL_1 - values["DampingGain"] = 0 if lat_active else 100 + values["DampingGain"] = 0 if lat_active else 100 #values["VALUE63"] = 0 #values["VALUE82_SET256"] = 0 @@ -330,7 +330,7 @@ def create_lfa_icon_non_camera_scc(packer, CS, CAN, CC): return ret def create_acc_control_scc2(packer, CAN, enabled, accel_last, accel, stopping, gas_override, set_speed, hud_control, hyundai_jerk, CS): - + if CS.scc_control is None: return None enabled = (enabled or CS.softHoldActive > 0) and CS.paddle_button_prev == 0 @@ -341,7 +341,7 @@ def create_acc_control_scc2(packer, CAN, enabled, accel_last, accel, stopping, g acc_mode = 4 if enabled else 0 enabled = False accel = accel_last = 0.5 - + elif hyundai_jerk.carrot_cruise == 2: accel = accel_last = hyundai_jerk.carrot_cruise_accel @@ -399,7 +399,7 @@ def create_acc_control_scc2(packer, CAN, enabled, accel_last, accel, stopping, g # AccelLimitBandUpper, Lower values["SysFailState"] = 0 # 1: Performance degredation, 2: system temporairy unavailble, 3: SCC Service required , 눈이 묻어 레이더오류시... 2가 됨. 이때 가속을 안함... - values["AccelLimitBandUpper"] = 0.0 # 이값이 1.26일때 가속을 안하는 증상이 보임.. + values["AccelLimitBandUpper"] = 0.0 # 이값이 1.26일때 가속을 안하는 증상이 보임.. values["AccelLimitBandLower"] = 0.0 values["ZEROS_7"] = 1 @@ -568,7 +568,7 @@ def alt_cruise_buttons(packer, CP, CAN, buttons, cruise_btns_msg, cnt): cruise_btns_msg["COUNTER"] = (cruise_btns_msg["COUNTER"] + 1 + cnt) % 256 bus = CAN.ECAN if CP.flags & HyundaiFlags.CANFD_HDA2 else CAN.CAM return packer.make_can_msg("CRUISE_BUTTONS_ALT", bus, cruise_btns_msg) - + def hkg_can_fd_checksum(address: int, sig, d: bytearray) -> int: crc = 0 for i in range(2, len(d)): @@ -643,6 +643,24 @@ def _apply_radar_blink(values, radar_pairs, frame, *, values[det_key] = 2 - blink values[dist_key] = min_dist +def _suppress_trailer_lfa_cluster_warnings(values, CS): + if not getattr(CS, "trailer_connected", False): + return + + # Keep the vehicle's native trailer mode active. Only suppress the cluster + # driver-assistance warning popup fields that would hide/block openpilot lateral UI. + for key in ("FAULT_LFA", "FAULT_HDA", "FAULT_DAS"): + if key in values: + values[key] = 0 + + for key in ("ALERTS_2", "ALERTS_3", "ALERTS_5"): + if key in values: + values[key] = 0 + + for key in ("SOUNDS_2", "SOUNDS_3", "SOUNDS_4"): + if key in values: + values[key] = 0 + def _make_ccnc_values(values, CS, lat_active, frame, hud_control, lane_line=True, corner_radar=True, desire=0, @@ -667,7 +685,7 @@ def _make_ccnc_values(values, CS, lat_active, frame, hud_control, ] for det_key, dist_key in radar_all: if values[det_key] >= 4 and values[dist_key] != 0: - values[det_key] = 1 + values[det_key] = 3 if blink_pairs: _apply_radar_blink(values, blink_pairs, frame, t=blink_t) @@ -701,7 +719,7 @@ def create_ccnc_messages(CP, packer, CAN, frame, CC, CS, hud_control, if HDA_LFA_SymSta == 0 and 0 < frame % 200 < 12: values["LFA_BTN"] = 1 - if CC.enabled: + if CC.enabled: if not CS.MainMode_ACC: if 10 < frame % 200 <= 16 and CS.out.vEgo > 3.: values["ADAPTIVE_CRUISE_MAIN_BTN"] = 1 @@ -783,6 +801,8 @@ def create_ccnc_messages(CP, packer, CAN, frame, CC, CS, hud_control, values["ALERTS_5"] = 0 # curvature 표시(0x161쪽 기존 로직 유지) + _suppress_trailer_lfa_cluster_warnings(values, CS) + curvature = round(CS.out.steeringAngleDeg / 3) values["LANELINE_CURVATURE"] = (min(abs(curvature), 15) + (-1 if curvature < 0 else 0)) if lat_active else 0 values["LANELINE_CURVATURE_DIRECTION"] = 1 if curvature < 0 and lat_active else 0 @@ -872,6 +892,8 @@ def create_ccnc_messages(CP, packer, CAN, frame, CC, CS, hud_control, values["FAULT_LSS"] = 0 values["FAULT_DAS"] = 0 + _suppress_trailer_lfa_cluster_warnings(values, CS) + ret.append(packer.make_can_msg("CCNC_0x162", CAN.ECAN, values)) # --- NEW_MSG_4B9 (corner radar keep-alive?) --- diff --git a/opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_canfd.dbc b/opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_canfd.dbc index f88f20be605..c9065d9c542 100644 --- a/opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_canfd.dbc +++ b/opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_canfd.dbc @@ -39,8 +39,8 @@ BU_: XXX CAMERA FRONT_RADAR ADRV APRK BO_ 53 ACCELERATOR: 32 XXX SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - SG_ GEAR : 192|3@1+ (1,0) [0|7] "" XXX SG_ ACCELERATOR_PEDAL : 40|8@1+ (1,0) [0|255] "" XXX + SG_ GEAR : 192|3@1+ (1,0) [0|7] "" XXX BO_ 64 GEAR_ALT: 32 XXX SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX @@ -81,8 +81,8 @@ BO_ 80 LKAS: 16 XXX SG_ DampingGain : 104|8@1+ (1,0) [0|255] "" XXX BO_ 81 ADRV_0x51: 32 ADRV - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX BO_ 96 ESP_STATUS: 32 XXX SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX @@ -183,8 +183,8 @@ BO_ 272 LKAS_ALT: 32 XXX BO_ 293 STEERING_SENSORS: 16 XXX SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - SG_ STEERING_RATE : 40|8@1+ (4,0) [0|1016] "deg/s" XXX SG_ STEERING_ANGLE : 24|16@1- (-0.1,0) [0|255] "deg" XXX + SG_ STEERING_RATE : 40|8@1+ (4,0) [0|1016] "deg/s" XXX BO_ 298 LFA: 16 ADRV SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX @@ -214,59 +214,11 @@ BO_ 304 GEAR_SHIFTER: 16 XXX SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX SG_ PARK_BUTTON : 32|2@1+ (1,0) [0|3] "" XXX - SG_ GEAR : 64|3@1+ (1,0) [0|7] "" XXX SG_ KNOB_POSITION : 40|3@1+ (1,0) [0|3] "" XXX + SG_ GEAR : 64|3@1+ (1,0) [0|7] "" XXX -BO_ 357 SPAS1: 24 APRK - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|0] "" XXX - SG_ NEW_SIGNAL_1 : 96|16@1- (0.1,0) [0|0] "" XXX - SG_ NEW_SIGNAL_2 : 90|3@1+ (1,0) [0|0] "" XXX - -BO_ 362 SPAS2: 32 APRK - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|0] "" XXX - SG_ BLINKER_CONTROL : 133|3@1+ (1,0) [0|0] "" XXX - -BO_ 373 TCS: 24 XXX - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_4 : 24|7@1+ (1,0) [0|127] "" XXX - SG_ NEW_SIGNAL_9 : 31|1@0+ (1,0) [0|1] "" XXX - SG_ aBasis : 32|11@1+ (0.01,-10.23) [0|7] "m/s^2" XXX - SG_ NEW_SIGNAL_1 : 47|5@0+ (1,0) [0|31] "" XXX - SG_ ACCEL_REF_ACC : 48|11@1- (1,0) [0|1023] "" XXX - SG_ NEW_SIGNAL_2 : 63|5@0+ (1,0) [0|31] "" XXX - SG_ SCC_OptTyp : 64|2@1+ (1,0) [0|0] "" AWD,EMS,FR_CMR,HCU,H_U_MM,TCU,VCU,vBDM - SG_ ACCEnable : 67|2@0+ (1,0) [0|3] "" XXX - SG_ ACC_REQ : 68|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_3 : 69|1@0+ (1,0) [0|1] "" XXX - SG_ SCC_ReqLimSta : 70|2@1+ (1,0) [0|0] "" ADAS_DRV,AWD,Dummy,EMS,FR_CMR,H_U_MM,TCU,vBDM - SG_ ESC_StdStillVal : 72|2@1+ (1,0) [0|3] "" ADAS_DRV,AWD,Dummy,EMS,FR_CMR,H_U_MM,TCU,vBDM - SG_ BrakeLight : 74|2@1+ (1,0) [0|3] "" XXX - SG_ ESC_DclEnblReq : 76|2@1+ (1,0) [0|3] "" AWD,Dummy,EMS,FR_CMR,H_U_MM,TCU,vBDM - SG_ NEW_SIGNAL_5 : 79|2@0+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_21 : 80|1@0+ (1,0) [0|1] "" XXX - SG_ DriverBraking : 81|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_20 : 82|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_11 : 83|1@0+ (1,0) [0|1] "" XXX - SG_ DriverBrakingLowSens : 84|1@1+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_10 : 85|1@0+ (1,0) [0|1] "" XXX - SG_ ESC_PrkBrkActvSta : 86|2@1+ (1,0) [0|3] "" ADAS_DRV,AWD,Dummy,EMS,FR_CMR,H_U_MM,RR_C_RDR,TCU,vBDM - SG_ NEW_SIGNAL_12 : 95|8@0+ (1,0) [0|255] "" XXX - SG_ FCA_EquipSta : 96|2@1+ (1,0) [0|3] "" ADAS_DRV,FR_CMR,H_U_MM,vBDM - SG_ FCA_AvlblSta : 98|2@1+ (1,0) [0|3] "" ADAS_DRV,AFCU_DRV,CLU,Dummy,FR_CMR,H_U_MM,vBDM - SG_ NEW_SIGNAL_13 : 103|4@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_14 : 111|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_15 : 119|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_16 : 127|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_6 : 128|4@1+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_17 : 133|2@0+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_7 : 135|2@0+ (1,0) [0|3] "" XXX - SG_ PROBABLY_EQUIP : 136|2@1+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_18 : 143|6@0+ (1,0) [0|63] "" XXX - SG_ NEW_SIGNAL_19 : 151|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_8 : 183|16@0+ (1,0) [0|65535] "" XXX +BO_ 1079 TRAILER_STATUS: 8 XXX + SG_ TRAILER_CONNECTED : 0|1@1+ (1,0) [0|1] "" XXX BO_ 352 ADRV_0x160: 16 ADRV SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX @@ -378,6 +330,57 @@ BO_ 354 CCNC_0x162: 32 CCNC SG_ FAULT_DAS : 246|3@1+ (1,0) [0|7] "" XXX SG_ FAULT_ESS : 249|3@1+ (1,0) [0|7] "" XXX +BO_ 357 SPAS1: 24 APRK + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|0] "" XXX + SG_ NEW_SIGNAL_2 : 90|3@1+ (1,0) [0|0] "" XXX + SG_ NEW_SIGNAL_1 : 96|16@1- (0.1,0) [0|0] "" XXX + +BO_ 362 SPAS2: 32 APRK + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|0] "" XXX + SG_ BLINKER_CONTROL : 133|3@1+ (1,0) [0|0] "" XXX + +BO_ 373 TCS: 24 XXX + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_4 : 24|7@1+ (1,0) [0|127] "" XXX + SG_ NEW_SIGNAL_9 : 31|1@0+ (1,0) [0|1] "" XXX + SG_ aBasis : 32|11@1+ (0.01,-10.23) [0|7] "m/s^2" XXX + SG_ NEW_SIGNAL_1 : 47|5@0+ (1,0) [0|31] "" XXX + SG_ ACCEL_REF_ACC : 48|11@1- (1,0) [0|1023] "" XXX + SG_ NEW_SIGNAL_2 : 63|5@0+ (1,0) [0|31] "" XXX + SG_ SCC_OptTyp : 64|2@1+ (1,0) [0|0] "" AWD,EMS,FR_CMR,HCU,H_U_MM,TCU,VCU,vBDM + SG_ ACCEnable : 67|2@0+ (1,0) [0|3] "" XXX + SG_ ACC_REQ : 68|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_3 : 69|1@0+ (1,0) [0|1] "" XXX + SG_ SCC_ReqLimSta : 70|2@1+ (1,0) [0|0] "" ADAS_DRV,AWD,Dummy,EMS,FR_CMR,H_U_MM,TCU,vBDM + SG_ ESC_StdStillVal : 72|2@1+ (1,0) [0|3] "" ADAS_DRV,AWD,Dummy,EMS,FR_CMR,H_U_MM,TCU,vBDM + SG_ BrakeLight : 74|2@1+ (1,0) [0|3] "" XXX + SG_ ESC_DclEnblReq : 76|2@1+ (1,0) [0|3] "" AWD,Dummy,EMS,FR_CMR,H_U_MM,TCU,vBDM + SG_ NEW_SIGNAL_5 : 79|2@0+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_21 : 80|1@0+ (1,0) [0|1] "" XXX + SG_ DriverBraking : 81|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_20 : 82|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_11 : 83|1@0+ (1,0) [0|1] "" XXX + SG_ DriverBrakingLowSens : 84|1@1+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_10 : 85|1@0+ (1,0) [0|1] "" XXX + SG_ ESC_PrkBrkActvSta : 86|2@1+ (1,0) [0|3] "" ADAS_DRV,AWD,Dummy,EMS,FR_CMR,H_U_MM,RR_C_RDR,TCU,vBDM + SG_ NEW_SIGNAL_12 : 95|8@0+ (1,0) [0|255] "" XXX + SG_ FCA_EquipSta : 96|2@1+ (1,0) [0|3] "" ADAS_DRV,FR_CMR,H_U_MM,vBDM + SG_ FCA_AvlblSta : 98|2@1+ (1,0) [0|3] "" ADAS_DRV,AFCU_DRV,CLU,Dummy,FR_CMR,H_U_MM,vBDM + SG_ NEW_SIGNAL_13 : 103|4@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_14 : 111|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_15 : 119|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_16 : 127|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_6 : 128|4@1+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_17 : 133|2@0+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_7 : 135|2@0+ (1,0) [0|3] "" XXX + SG_ PROBABLY_EQUIP : 136|2@1+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_18 : 143|6@0+ (1,0) [0|63] "" XXX + SG_ NEW_SIGNAL_19 : 151|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_8 : 183|16@0+ (1,0) [0|65535] "" XXX + BO_ 384 CAM_0x180: 32 CAMERA SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX @@ -443,8 +446,8 @@ BO_ 426 CRUISE_BUTTONS_ALT: 16 XXX SG_ NEW_SIGNAL_2 : 31|3@1+ (1,0) [0|7] "" XXX SG_ ADAPTIVE_CRUISE_MAIN_BTN : 34|1@1+ (1,0) [0|1] "" XXX SG_ NEW_SIGNAL_3 : 35|1@1+ (1,0) [0|1] "" XXX - SG_ LFA_BTN : 39|1@1+ (1,0) [0|1] "" XXX SG_ CRUISE_BUTTONS : 36|3@1+ (1,0) [0|4] "" XXX + SG_ LFA_BTN : 39|1@1+ (1,0) [0|1] "" XXX SG_ NEW_SIGNAL_4 : 40|1@1+ (1,0) [0|1] "" XXX SG_ NORMAL_CRUISE_MAIN_BTN : 41|1@1+ (1,0) [0|1] "" XXX SG_ NEW_SIGNAL_5 : 42|2@1+ (1,0) [0|3] "" XXX @@ -462,23 +465,23 @@ BO_ 426 CRUISE_BUTTONS_ALT: 16 XXX SG_ BYTE15 : 120|8@1+ (1,0) [0|255] "" XXX BO_ 437 CCNC_0x1B5: 32 CCNC - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - SG_ LEFT_QUAL : 24|3@1+ (1,0) [0|7] "" XXX - SG_ LEFT_LDW : 27|2@1+ (1,0) [0|3] "" XXX - SG_ LEFT_POSITION : 29|14@1- (0.0039625,0) [-32.4608|32.4568375] "m" XXX - SG_ LEFT_HEADING : 43|10@1- (0.000976563,0) [-0.500000256|0.499023693] "rad" XXX - SG_ LEFT_CURVATURE : 64|16@1- (1E-006,0) [-0.032768|0.032767] "1/m" XXX - SG_ LEFT_CURVATURE_DERIVATIVE : 80|16@1- (4E-009,0) [-0.000131072|0.000131068] "1/m2" XXX - SG_ RIGHT_QUAL : 96|3@1+ (1,0) [0|7] "" XXX - SG_ RIGHT_LDW : 99|2@1+ (1,0) [0|3] "" XXX - SG_ RIGHT_POSITION : 101|14@1- (0.0039625,0) [-32.4608|32.4568375] "m" XXX - SG_ RIGHT_HEADING : 115|10@1- (0.000976563,0) [-0.500000256|0.499023693] "rad" XXX - SG_ RIGHT_CURVATURE : 128|16@1- (1E-006,0) [-0.032768|0.032767] "1/m" XXX - SG_ RIGHT_CURVATURE_DERIVATIVE : 144|16@1- (4E-009,0) [-0.000131072|0.000131068] "1/m2" XXX - SG_ LEAD : 192|7@1+ (1,0) [0|127] "" XXX - SG_ LEAD_SPEED : 200|12@1+ (0.05,-100) [-100|104.75] "m/s" XXX - SG_ LEAD_DISTANCE : 212|12@1+ (0.05,0) [0|204.75] "m" XXX + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + SG_ LEFT_QUAL : 24|3@1+ (1,0) [0|7] "" XXX + SG_ LEFT_LDW : 27|2@1+ (1,0) [0|3] "" XXX + SG_ LEFT_POSITION : 29|14@1- (0.0039625,0) [-32.4608|32.4568375] "m" XXX + SG_ LEFT_HEADING : 43|10@1- (0.000976563,0) [-0.500000256|0.499023693] "rad" XXX + SG_ LEFT_CURVATURE : 64|16@1- (1e-06,0) [-0.032768|0.032767] "1/m" XXX + SG_ LEFT_CURVATURE_DERIVATIVE : 80|16@1- (4e-09,0) [-0.000131072|0.000131068] "1/m2" XXX + SG_ RIGHT_QUAL : 96|3@1+ (1,0) [0|7] "" XXX + SG_ RIGHT_LDW : 99|2@1+ (1,0) [0|3] "" XXX + SG_ RIGHT_POSITION : 101|14@1- (0.0039625,0) [-32.4608|32.4568375] "m" XXX + SG_ RIGHT_HEADING : 115|10@1- (0.000976563,0) [-0.500000256|0.499023693] "rad" XXX + SG_ RIGHT_CURVATURE : 128|16@1- (1e-06,0) [-0.032768|0.032767] "1/m" XXX + SG_ RIGHT_CURVATURE_DERIVATIVE : 144|16@1- (4e-09,0) [-0.000131072|0.000131068] "1/m2" XXX + SG_ LEAD : 192|7@1+ (1,0) [0|127] "" XXX + SG_ LEAD_SPEED : 200|12@1+ (0.05,-100) [-100|104.75] "m/s" XXX + SG_ LEAD_DISTANCE : 212|12@1+ (0.05,0) [0|204.75] "m" XXX BO_ 438 CAM_0x1b6: 32 CAMERA SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX @@ -496,16 +499,31 @@ BO_ 441 CAM_0x1b9: 32 CAMERA SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX +BO_ 442 BLINDSPOTS_REAR_CORNERS: 24 XXX + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + SG_ LEFT_BLOCKED : 24|1@0+ (1,0) [0|1] "" XXX + SG_ INDICATOR_LEFT_TWO : 30|1@0+ (1,0) [0|3] "" XXX + SG_ INDICATOR_RIGHT_TWO : 32|1@1+ (1,0) [0|3] "" XXX + SG_ FL_INDICATOR : 46|6@0+ (1,0) [0|1] "" XXX + SG_ FR_INDICATOR : 54|6@0+ (1,0) [0|63] "" XXX + SG_ RIGHT_BLOCKED : 64|1@0+ (1,0) [0|1] "" XXX + SG_ COLLISION_AVOIDANCE_ACTIVE : 68|1@0+ (1,0) [0|1] "" XXX + SG_ INDICATOR_LEFT_THREE : 128|1@0+ (1,0) [0|1] "" XXX + SG_ INDICATOR_RIGHT_THREE : 130|1@0+ (1,0) [0|1] "" XXX + SG_ INDICATOR_LEFT_FOUR : 138|1@0+ (1,0) [0|1] "" XXX + SG_ INDICATOR_RIGHT_FOUR : 141|1@0+ (1,0) [0|1] "" XXX + BO_ 463 CRUISE_BUTTONS: 8 XXX SG_ _CHECKSUM : 0|8@1+ (1,0) [0|65535] "" XXX - SG_ LFA_BTN : 23|1@1+ (1,0) [0|1] "" XXX - SG_ SET_ME_1 : 29|1@1+ (1,0) [0|1] "" XXX - SG_ ADAPTIVE_CRUISE_MAIN_BTN : 19|1@1+ (1,0) [0|1] "" XXX - SG_ NORMAL_CRUISE_MAIN_BTN : 21|1@1+ (1,0) [0|1] "" XXX SG_ COUNTER : 12|4@1+ (1,0) [0|255] "" XXX SG_ CRUISE_BUTTONS : 16|3@1+ (1,0) [0|3] "" XXX + SG_ ADAPTIVE_CRUISE_MAIN_BTN : 19|1@1+ (1,0) [0|1] "" XXX + SG_ NORMAL_CRUISE_MAIN_BTN : 21|1@1+ (1,0) [0|1] "" XXX + SG_ LFA_BTN : 23|1@1+ (1,0) [0|1] "" XXX SG_ RIGHT_PADDLE : 25|1@1+ (1,0) [0|1] "" XXX SG_ LEFT_PADDLE : 27|1@1+ (1,0) [0|1] "" XXX + SG_ SET_ME_1 : 29|1@1+ (1,0) [0|1] "" XXX SG_ SET_ME_1_ : 40|1@0+ (1,0) [0|1] "" XXX BO_ 474 ADRV_0x1da: 32 ADRV @@ -517,18 +535,31 @@ BO_ 474 ADRV_0x1da: 32 ADRV BO_ 480 LFAHDA_CLUSTER: 16 FR_CMR SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - SG_ HDA_OptUsmSta : 24|3@1+ (1,0) [0|0] "" CGW - SG_ LFA_OptUsmSta : 27|3@1+ (1,0) [0|0] "" CGW - SG_ HDA_CntrlModSta : 30|2@1+ (1,0) [0|0] "" CGW - SG_ HDA_InfoPUDis : 32|3@1+ (1,0) [0|0] "" CGW - SG_ HDA_AutoSetSpdSta : 35|2@1+ (1,0) [0|0] "" CGW - SG_ HDA_AutoSetSpdUpdtSta : 37|2@1+ (1,0) [0|0] "" CGW - SG_ HDA_AutoSetSpdVal : 39|8@1+ (1,0) [0|0] "km/h" CGW - SG_ HDA_LFA_SymSta : 47|2@1+ (1,0) [0|0] "" CGW - SG_ HDA_LFA_WrnSnd : 49|2@1+ (1,0) [0|0] "" Dummy - SG_ HDA_InfoPUDis1 : 51|3@1+ (1,0) [0|7] "" CLU,CGW - SG_ HDA_TDMRMDclReq : 54|2@1+ (1,0) [0|3] "" Dummy - + SG_ HDA_OptUsmSta : 24|3@1+ (1,0) [0|0] "" CGW + SG_ LFA_OptUsmSta : 27|3@1+ (1,0) [0|0] "" CGW + SG_ HDA_CntrlModSta : 30|2@1+ (1,0) [0|0] "" CGW + SG_ HDA_InfoPUDis : 32|3@1+ (1,0) [0|0] "" CGW + SG_ HDA_AutoSetSpdSta : 35|2@1+ (1,0) [0|0] "" CGW + SG_ HDA_AutoSetSpdUpdtSta : 37|2@1+ (1,0) [0|0] "" CGW + SG_ HDA_AutoSetSpdVal : 39|8@1+ (1,0) [0|0] "km/h" CGW + SG_ HDA_LFA_SymSta : 47|2@1+ (1,0) [0|0] "" CGW + SG_ HDA_LFA_WrnSnd : 49|2@1+ (1,0) [0|0] "" Dummy + SG_ HDA_InfoPUDis1 : 51|3@1+ (1,0) [0|7] "" CLU,CGW + SG_ HDA_TDMRMDclReq : 54|2@1+ (1,0) [0|3] "" Dummy + +BO_ 485 BLINDSPOTS_FRONT_CORNER_1: 16 XXX + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + SG_ REVERSING : 24|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_5 : 31|2@0+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_7 : 32|2@1+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_8 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_9 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_4 : 80|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_3 : 88|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_2 : 96|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_1 : 108|2@0+ (1,0) [0|3] "" XXX + BO_ 490 ADRV_0x1ea: 32 ADRV SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX @@ -564,6 +595,24 @@ BO_ 490 ADRV_0x1ea: 32 ADRV SG_ LANELINE_RIGHT_POSITION : 247|8@0+ (1,0) [0|255] "" XXX SG_ NEW_SIGNAL_7 : 248|1@0+ (1,0) [0|1] "" XXX +BO_ 506 CLUSTER_SPEED_LIMIT: 32 CAM + SG_ SPEED_LIMIT_1 : 39|7@0+ (1,0) [0|255] "" XXX + SG_ SPEED_LIMIT_2 : 47|7@0+ (1,0) [0|255] "" XXX + SG_ SECONDARY_LIMIT_1 : 79|8@0+ (1,0) [0|127] "" XXX + SG_ SECONDARY_LIMIT_2 : 103|8@0+ (1,0) [0|127] "" XXX + SG_ SPEED_LIMIT_3 : 119|8@0+ (1,0) [0|255] "" XXX + SG_ ARROW_DOWN : 120|1@0+ (1,0) [0|1] "" XXX + SG_ ARROW_UP : 121|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_2 : 122|3@1+ (1,0) [0|7] "" XXX + SG_ SPEED_CHANGE_BLINKING : 129|1@1+ (1,0) [0|3] "" XXX + SG_ CHIME_1 : 133|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_4 : 143|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_3 : 146|3@0+ (1,0) [0|7] "" XXX + SG_ NEW_SIGNAL_1 : 147|7@1+ (1,0) [0|127] "" XXX + SG_ SCHOOL_ZONE : 155|1@0+ (1,0) [0|1] "" XXX + SG_ SPEED_LIMIT_4 : 215|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_5 : 223|8@0+ (1,0) [0|255] "" XXX + BO_ 507 CAM_0x1fb: 32 CAMERA SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX @@ -691,6 +740,16 @@ BO_ 676 CAM_0x2a4: 24 XXX SG_ NEW_SIGNAL_14 : 224|16@1+ (1,0) [0|65535] "" XXX SG_ NEW_SIGNAL_15 : 240|16@1+ (1,0) [0|65535] "" XXX +BO_ 687 STEER_TOUCH_2AF: 8 XXX + SG_ CHECKSUM_ : 7|8@0+ (1,0) [0|255] "" XXX + SG_ COUNTER_ : 8|8@1+ (1,0) [0|255] "" XXX + SG_ TOUCH_DETECT : 23|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_2 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ TOUCH1 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ TOUCH2 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_3 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_4 : 63|8@0+ (1,0) [0|255] "" XXX + BO_ 699 CAM_0x2bb: 32 CAMERA SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX @@ -749,6 +808,12 @@ BO_ 866 CAM_0x362: 32 CAMERA SG_ NEW_SIGNAL_14 : 224|16@1+ (1,0) [0|65535] "" XXX SG_ NEW_SIGNAL_15 : 240|16@1+ (1,0) [0|65535] "" XXX +BO_ 874 BLINDSPOTS_FRONT_CORNER_2: 16 XXX + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + SG_ RIGHT_BSD : 27|1@0+ (1,0) [0|1] "" XXX + SG_ LEFT_BSD : 28|1@0+ (1,0) [0|1] "" XXX + BO_ 928 TPMS: 16 XXX SG_ PRESSURE_FL : 39|8@0+ (1,0) [0|255] "" XXX SG_ PRESSURE_FR : 47|8@0+ (1,0) [0|255] "" XXX @@ -761,10 +826,10 @@ BO_ 961 BLINKER_STALKS: 8 XXX SG_ CHECKSUM_MAYBE : 7|8@0+ (1,0) [0|255] "" XXX SG_ COUNTER_ALT : 15|4@0+ (1,0) [0|15] "" XXX SG_ HIGHBEAM_FORWARD : 18|1@0+ (1,0) [0|1] "" XXX + SG_ LIGHT_KNOB_POSITION : 21|2@0+ (1,0) [0|3] "" XXX SG_ HIGHBEAM_BACKWARD : 26|1@0+ (1,0) [0|1] "" XXX - SG_ RIGHT_BLINKER : 32|1@0+ (1,0) [0|1] "" XXX SG_ LEFT_BLINKER : 30|1@0+ (1,0) [0|1] "" XXX - SG_ LIGHT_KNOB_POSITION : 21|2@0+ (1,0) [0|3] "" XXX + SG_ RIGHT_BLINKER : 32|1@0+ (1,0) [0|1] "" XXX BO_ 995 BLINKERS_ALT: 16 XXX SG_ LEFT_BLINKER : 74|1@0+ (1,0) [0|1] "" XXX @@ -781,10 +846,10 @@ BO_ 1041 DOORS_SEATBELTS: 8 XXX SG_ COUNTER_ALT : 15|4@0+ (1,0) [0|15] "" XXX SG_ DRIVER_DOOR : 24|1@1+ (1,0) [0|1] "" XXX SG_ PASSENGER_DOOR : 34|1@0+ (1,0) [0|1] "" XXX + SG_ PASSENGER_SEATBELT : 36|1@0+ (1,0) [0|1] "" XXX + SG_ DRIVER_SEATBELT : 42|1@0+ (1,0) [0|1] "" XXX SG_ DRIVER_REAR_DOOR : 52|1@0+ (1,0) [0|1] "" XXX SG_ PASSENGER_REAR_DOOR : 56|1@0+ (1,0) [0|1] "" XXX - SG_ DRIVER_SEATBELT : 42|1@0+ (1,0) [0|1] "" XXX - SG_ PASSENGER_SEATBELT : 36|1@0+ (1,0) [0|1] "" XXX BO_ 1043 BLINKERS: 8 XXX SG_ LEFT_STALK : 8|1@0+ (1,0) [0|1] "" XXX @@ -796,71 +861,6 @@ BO_ 1043 BLINKERS: 8 XXX SG_ RIGHT_LAMP_ALT : 61|1@0+ (1,0) [0|1] "" XXX SG_ USE_ALT_LAMP : 62|1@0+ (1,0) [0|1] "" XXX -BO_ 1240 CLUSTER_INFO: 8 XXX - SG_ DISTANCE_UNIT : 0|1@1+ (1,0) [0|1] "" XXX - -BO_ 442 BLINDSPOTS_REAR_CORNERS: 24 XXX - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - SG_ LEFT_BLOCKED : 24|1@0+ (1,0) [0|1] "" XXX - SG_ INDICATOR_LEFT_TWO : 30|1@0+ (1,0) [0|3] "" XXX - SG_ INDICATOR_RIGHT_TWO : 32|1@1+ (1,0) [0|3] "" XXX - SG_ FL_INDICATOR : 46|6@0+ (1,0) [0|1] "" XXX - SG_ FR_INDICATOR : 54|6@0+ (1,0) [0|63] "" XXX - SG_ RIGHT_BLOCKED : 64|1@0+ (1,0) [0|1] "" XXX - SG_ COLLISION_AVOIDANCE_ACTIVE : 68|1@0+ (1,0) [0|1] "" XXX - SG_ INDICATOR_LEFT_THREE : 128|1@0+ (1,0) [0|1] "" XXX - SG_ INDICATOR_RIGHT_THREE : 130|1@0+ (1,0) [0|1] "" XXX - SG_ INDICATOR_LEFT_FOUR : 138|1@0+ (1,0) [0|1] "" XXX - SG_ INDICATOR_RIGHT_FOUR : 141|1@0+ (1,0) [0|1] "" XXX - -BO_ 874 BLINDSPOTS_FRONT_CORNER_2: 16 XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ RIGHT_BSD : 27|1@0+ (1,0) [0|1] "" XXX - SG_ LEFT_BSD : 28|1@0+ (1,0) [0|1] "" XXX - -BO_ 485 BLINDSPOTS_FRONT_CORNER_1: 16 XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_1 : 108|2@0+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_2 : 96|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_3 : 88|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_4 : 80|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_5 : 31|2@0+ (1,0) [0|3] "" XXX - SG_ REVERSING : 24|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_7 : 32|2@1+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_8 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_9 : 55|8@0+ (1,0) [0|255] "" XXX - -BO_ 506 CLUSTER_SPEED_LIMIT: 32 CAM - SG_ SPEED_LIMIT_1 : 39|7@0+ (1,0) [0|255] "" XXX - SG_ SPEED_LIMIT_2 : 47|7@0+ (1,0) [0|255] "" XXX - SG_ SECONDARY_LIMIT_1 : 79|8@0+ (1,0) [0|127] "" XXX - SG_ SECONDARY_LIMIT_2 : 103|8@0+ (1,0) [0|127] "" XXX - SG_ SPEED_LIMIT_3 : 119|8@0+ (1,0) [0|255] "" XXX - SG_ ARROW_DOWN : 120|1@0+ (1,0) [0|1] "" XXX - SG_ ARROW_UP : 121|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_2 : 122|3@1+ (1,0) [0|7] "" XXX - SG_ SPEED_CHANGE_BLINKING : 129|1@1+ (1,0) [0|3] "" XXX - SG_ CHIME_1 : 133|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_4 : 143|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_3 : 146|3@0+ (1,0) [0|7] "" XXX - SG_ NEW_SIGNAL_1 : 147|7@1+ (1,0) [0|127] "" XXX - SG_ SCHOOL_ZONE : 155|1@0+ (1,0) [0|1] "" XXX - SG_ SPEED_LIMIT_4 : 215|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_5 : 223|8@0+ (1,0) [0|255] "" XXX - -BO_ 687 STEER_TOUCH_2AF: 8 XXX - SG_ CHECKSUM_ : 7|8@0+ (1,0) [0|255] "" XXX - SG_ COUNTER_ : 8|8@1+ (1,0) [0|255] "" XXX - SG_ TOUCH_DETECT : 23|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ TOUCH1 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ TOUCH2 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_3 : 55|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_4 : 63|8@0+ (1,0) [0|255] "" XXX - BO_ 1052 LIGHT_SENSOR: 8 XXX SG_ CHECKSUM : 7|8@0+ (1,0) [0|255] "" XXX SG_ COUNTER : 15|4@0+ (1,0) [0|15] "" XXX @@ -925,6 +925,9 @@ BO_ 1214 NEW_MSG_4BE: 8 XXX SG_ BYTE_7 : 55|8@0+ (1,0) [0|255] "" XXX SG_ BYTE_8 : 63|8@0+ (1,0) [0|255] "" XXX +BO_ 1240 CLUSTER_INFO: 8 XXX + SG_ DISTANCE_UNIT : 0|1@1+ (1,0) [0|1] "" XXX + BO_ 1259 LOCAL_TIME2: 8 XXX SG_ HOURS : 15|5@0+ (1,0) [0|31] "" XXX SG_ MINUTES : 21|6@0+ (1,0) [0|63] "" XXX @@ -939,20 +942,15 @@ BO_ 1264 LOCAL_TIME: 8 XXX SG_ YEAR : 47|8@0+ (1,0) [0|255] "" XXX SG_ DATE : 48|5@1+ (1,0) [0|31] "" XXX -CM_ 272 "Alternative LKAS message, used on cars such as 2023 Ioniq 6, 2nd gen Kona. Matches LKAS except size is 32 bytes"; -CM_ SG_ 272 LKAS_ANGLE_CMD "tracks MDPS->STEERING_ANGLE when not engaged, not STEERING_SENSORS->STEERING_ANGLE"; -CM_ 676 "Contains signals with detailed lane line information. Used by ADAS ECU on HDA 2 vehicles to operate LFA."; -CM_ 866 "Contains signals with detailed lane line information. Used by ADAS ECU on HDA 2 vehicles to operate LFA. Used on cars that use message 272."; -CM_ 1043 "Lamp signals do not seem universal on cars that use LKAS_ALT, but stalk signals do."; - CM_ SG_ 80 HAS_LANE_SAFETY "If 0, hides LKAS 'Lane Safety' menu from vehicle settings"; CM_ SG_ 96 BRAKE_PRESSURE "User applied brake pedal pressure. Ramps from computer applied pressure on falling edge of cruise. Cruise cancels if !=0"; CM_ SG_ 101 BRAKE_POSITION "User applied brake pedal position, max is ~700. Signed on some vehicles"; -CM_ SG_ 373 PROBABLY_EQUIP "aeb equip?"; +CM_ SG_ 272 LKAS_ANGLE_CMD "tracks MDPS->STEERING_ANGLE when not engaged, not STEERING_SENSORS->STEERING_ANGLE"; +CM_ SG_ 352 SET_ME_9 "has something to do with AEB settings"; CM_ SG_ 373 ACCEnable "Likely a copy of CAN's TCS13->ACCEnable"; CM_ SG_ 373 DriverBraking "Likely derived from BRAKE->BRAKE_POSITION"; CM_ SG_ 373 DriverBrakingLowSens "Higher threshold version of DriverBraking"; -CM_ SG_ 352 SET_ME_9 "has something to do with AEB settings"; +CM_ SG_ 373 PROBABLY_EQUIP "aeb equip?"; CM_ SG_ 416 VSetDis "set speed in display units"; CM_ SG_ 676 LEFT_LANE_LINE "Left lane line confidence"; CM_ SG_ 676 RIGHT_LANE_LINE "Right lane line confidence"; @@ -963,49 +961,41 @@ CM_ SG_ 961 COUNTER_ALT "only increments on change"; CM_ SG_ 1041 COUNTER_ALT "only increments on change"; CM_ SG_ 1043 COUNTER_ALT "only increments on change"; CM_ SG_ 1043 USE_ALT_LAMP "likely 1 on cars that use alt lamp signals"; -VAL_ 53 GEAR 0 "P" 5 "D" 6 "N" 7 "R" ; +VAL_ 53 GEAR 0 "P" 5 "D" 6 "N" 7 "R"; VAL_ 64 GEAR 0 "P" 5 "D" 6 "N" 7 "R" 4 "T"; -VAL_ 69 GEAR 0 "P" 5 "D" 6 "N" 7 "R" ; -VAL_ 112 GEAR 0 "P" 5 "D" 6 "N" 7 "R" ; -VAL_ 80 LKA_ICON 0 "hidden" 1 "grey" 2 "green" 3 "flashing green" ; -VAL_ 80 LKA_MODE 1 "warning only" 2 "assist" 6 "off" ; +VAL_ 69 GEAR 0 "P" 5 "D" 6 "N" 7 "R"; +VAL_ 80 LKA_MODE 1 "warning only" 2 "assist" 6 "off"; +VAL_ 80 LKA_ICON 0 "hidden" 1 "grey" 2 "green" 3 "flashing green"; VAL_ 96 TRACTION_AND_STABILITY_CONTROL 0 "On" 5 "Limited" 1 "Off"; -VAL_ 234 LKA_FAULT 0 "ok" 1 "lka fault" ; +VAL_ 112 GEAR 0 "P" 5 "D" 6 "N" 7 "R"; +VAL_ 234 LKA_FAULT 0 "ok" 1 "lka fault"; VAL_ 267 CRUISE_BUTTONS 8 "CRUISE_MAIN" 4 "CANCEL" 1 "RES" 2 "SET" 3 "GAP"; -VAL_ 272 LKA_ICON 0 "hidden" 1 "grey" 2 "green" 3 "flashing green" ; -VAL_ 272 LKA_MODE 1 "warning only" 2 "assist" 6 "off" ; -VAL_ 272 LKAS_ANGLE_ACTIVE 1 "not active" 2 "active" ; -VAL_ 298 LKA_ICON 0 "hidden" 1 "grey" 2 "green" 3 "flashing green" ; -VAL_ 298 LKA_MODE 1 "warning only" 2 "assist" 6 "off" ; +VAL_ 272 LKA_MODE 1 "warning only" 2 "assist" 6 "off"; +VAL_ 272 LKA_ICON 0 "hidden" 1 "grey" 2 "green" 3 "flashing green"; +VAL_ 272 LKAS_ANGLE_ACTIVE 1 "not active" 2 "active"; +VAL_ 298 LKA_MODE 1 "warning only" 2 "assist" 6 "off"; +VAL_ 298 LKA_ICON 0 "hidden" 1 "grey" 2 "green" 3 "flashing green"; VAL_ 304 PARK_BUTTON 1 "Pressed" 2 "Not Pressed"; VAL_ 304 KNOB_POSITION 1 "R" 2 "N (on R side)" 3 "Centered" 4 "N (on D side)" 5 "D"; -VAL_ 304 GEAR 1 "P" 2 "R" 3 "N" 4 "D" ; -VAL_ 352 AEB_SETTING 1 "off" 2 "warning only" 3 "active assist" ; - +VAL_ 304 GEAR 1 "P" 2 "R" 3 "N" 4 "D"; +VAL_ 352 AEB_SETTING 1 "off" 2 "warning only" 3 "active assist"; VAL_ 353 FCA_ICON 0 "HIDDEN" 1 "ORANGE" 2 "RED"; VAL_ 353 FCA_ALT_ICON 0 "HIDDEN" 1 "ORANGE" 3 "RED"; -VAL_ 353 HDA_ICON 0 "HIDDEN" 1 "GRAY" 2 "GREEN" 3 "WHITE" 5 "CYAN HDP"; -VAL_ 353 SLA_ICON 0 "HIDDEN" 1 "WHITE UP" 2 "WHITE DOWN" 3 "GREEN UP" 4 "GREEN DOWN"; -VAL_ 353 NAV_ICON 0 "HIDDEN" 1 "GRAY" 2 "GREEN" 4 "WHITE"; -VAL_ 353 LFA_ICON 0 "HIDDEN" 1 "GRAY" 2 "GREEN" 3 "WHITE" 5 "CYAN"; -VAL_ 353 DAW_ICON 0 "HIDDEN" 1 "ORANGE"; VAL_ 353 LKA_ICON 0 "HIDDEN" 1 "ORANGE" 3 "GRAY" 4 "GREEN"; VAL_ 353 HBA_ICON 0 "HIDDEN" 1 "GRAY" 2 "GREEN"; VAL_ 353 FCA_IMAGE 0 "HIDDEN" 2 "VISIBLE"; VAL_ 353 BCA_LEFT 0 "HIDDEN" 1 "VISIBLE" 2 "VISIBLE+ICON"; VAL_ 353 BCA_RIGHT 0 "HIDDEN" 1 "VISIBLE" 2 "VISIBLE+ICON"; +VAL_ 353 LCA_LEFT_ARROW 0 "HIDDEN" 1 "VISIBLE"; +VAL_ 353 LCA_RIGHT_ARROW 0 "HIDDEN" 1 "VISIBLE"; VAL_ 353 CENTERLINE 0 "HIDDEN" 1 "GREEN"; VAL_ 353 TARGET 0 "HIDDEN" 1 "BLUE" 3 "WHITE"; -VAL_ 353 LANE_LEFT 0 "HIDDEN" 1 "GREEN"; -VAL_ 353 LANE_RIGHT 0 "HIDDEN" 1 "GREEN"; -VAL_ 353 LANE_ZOOM 0 "ZOOM" 1 "HIDDEN"; VAL_ 353 LANELINE_LEFT 0 "GRAY" 1 "HIDDEN" 2 "WHITE" 4 "ORANGE" 6 "GREEN"; VAL_ 353 LANELINE_RIGHT 0 "GRAY" 1 "HIDDEN" 2 "WHITE" 4 "ORANGE" 6 "GREEN"; VAL_ 353 LANE_HIGHLIGHT 0 "HIDDEN" 1 "GREEN" 2 "WHITE" 3 "BLUE" 4 "ORANGE" 5 "RED"; -VAL_ 353 LCA_LEFT_ARROW 0 "HIDDEN" 1 "VISIBLE"; -VAL_ 353 LCA_RIGHT_ARROW 0 "HIDDEN" 1 "VISIBLE"; -VAL_ 353 LCA_LEFT_ICON 0 "HIDDEN" 1 "GRAY" 2 "GREEN" 4 "WHITE"; -VAL_ 353 LCA_RIGHT_ICON 0 "HIDDEN" 1 "GRAY" 2 "GREEN" 4 "WHITE"; +VAL_ 353 LANE_LEFT 0 "HIDDEN" 1 "GREEN"; +VAL_ 353 LANE_RIGHT 0 "HIDDEN" 1 "GREEN"; +VAL_ 353 LANE_ZOOM 0 "ZOOM" 1 "HIDDEN"; VAL_ 353 ALERTS_1 0 "HIDDEN" 1 "WARNING_ONLY_CAR_CENTER" 2 "WARNING_ONLY_CAR_LEFT" 3 "WARNING_ONLY_CAR_RIGHT" 4 "WARNING_ONLY_LEFT" 5 "WARNING_ONLY_RIGHT" 11 "EMERGENCY_BRAKING_CAR_CENTER" 12 "EMERGENCY_BRAKING_CAR_LEFT" 13 "EMERGENCY_BRAKING_CAR_RIGHT" 14 "EMERGENCY_BRAKING_LEFT" 15 "EMERGENCY_BRAKING_RIGHT" 21 "EMERGENCY_STEERING_CAR_LEFT" 22 "EMERGENCY_STEERING_CAR_RIGHT" 23 "EMERGENCY_STEERING_CAR_LEFT_AWAY" 24 "EMERGENCY_STEERING_CAR_RIGHT_AWAY" 25 "EMERGENCY_STEERING_REAR_LEFT" 26 "EMERGENCY_STEERING_REAR_RIGHT" 33 "DRIVE_CAREFULLY"; VAL_ 353 ALERTS_2 0 "HIDDEN" 1 "KEEP_HANDS_ON_STEERING_WHEEL" 2 "KEEP_HANDS_ON_STEERING_WHEEL_RED" 3 "LANE_FOLLOWING_ASSIST_DEACTIVATED" 4 "HIGHWAY_DRIVING_ASSIST_DEACTIVATED" 5 "CONSIDER_TAKING_A_BREAK" 6 "PRESS_OK_BUTTON_TO_ENABLE_LANE_CHANGE_ASSIST" 7 "COLLISION_RISK_VEHICLE_TAKING_EMERGENCY_CONTROL" 8 "TAKE_CONTROL_OF_THE_VEHICLE_IMMEDIATELY_VEHICLE_IS_STOPPING" 9 "TAKE_CONTROL_OF_THE_VEHICLE_IMMEDIATELY" 11 "HIGHWAY_DRIVING_PILOT_SYSTEM_DEACTIVATED_AUDIBLE" 12 "KEEP_YOUR_EYES_ON_THE_ROAD" 13 "HIGHWAY_DRIVING_PILOT_CONDITIONS_NOT_MET_AUDIBLE" 14 "COLLISION_RISK_VEHICLE_TAKING_EMERGENCY_CONTROL" 15 "SET_THE_WIPER_AND_LIGHT_CONTROLS_TO_AUTO" 16 "BE_PREPARED_TO_TAKE_CONTROL_OF_THE_VEHICLE_AT_ANY_TIME" 21 "TAKE_CONTROL_OF_THE_VEHICLE_IMMEDIATELY_VEHICLE_IS_STOPPING" 10 "TAKE_CONTROL_OF_THE_VEHICLE_IMMEDIATELY"; VAL_ 353 ALERTS_3 0 "HIDDEN" 1 "AUTOMATICALLY_ADJUSTING_TO_THE_POSTED_SPEED_LIMIT" 2 "SET_SPEED_CHANGED" 3 "AUTOMATICALLY_ADJUSTING_TO_THE_POSTED_SPEED_LIMIT" 4 "SET_SPEED_CHANGED" 7 "DISTANCE_1" 8 "DISTANCE_2" 9 "DISTANCE_3" 10 "DISTANCE_4" 17 "DRIVE_CAREFULLY" 18 "CHECK_SURROUNDINGS" 19 "CONDITIONS_NOT_MET" 20 "LANES_NOT_DETECTED" 21 "CURVE_TOO_SHARP" 22 "LANE_TOO_NARROW" 23 "ROAD_TYPE_NOT_SUPPORTED" 24 "UNAVAILABLE_WITH_HAZARD_LIGHTS_ON" 25 "VEHICLE_SPEED_IS_TOO_LOW" 26 "KEEP_HANDS_ON_STEERING_WHEEL" 27 "LANE_TYPE_NOT_SUPPORTED" 28 "LANE_ASSIST_CANCELED_STEERING_INPUT_DETECTED"; @@ -1016,24 +1006,30 @@ VAL_ 353 SOUNDS_1 0 "NONE" 3 "FAST BEEP" 6 "CONSTANT BEEP"; VAL_ 353 SOUNDS_2 0 "NONE" 2 "SINGLE CHIME" 3 "CONSTANT CHIME" 6 "FAST BEEP"; VAL_ 353 SOUNDS_3 0 "NONE" 3 "SOFT CHIME" 5 "SINGLE CHIME"; VAL_ 353 SOUNDS_4 0 "NONE" 2 "DOUBLE CHIME"; -VAL_ 353 SETSPEED 0 "HIDDEN" 1 "GRAY" 2 "GREEN" 3 "WHITE" 6 "CYAN"; VAL_ 353 SETSPEED_HUD 0 "HIDDEN" 1 "GRAY" 2 "GREEN" 3 "WHITE" 5 "CYAN"; VAL_ 353 DISTANCE_LEAD 0 "HIDDEN" 1 "GRAY" 2 "WHITE"; VAL_ 353 DISTANCE_CAR 0 "HIDDEN" 1 "GRAY" 2 "WHITE" 3 "CYAN"; VAL_ 353 DISTANCE_SPACING 0 "HIDDEN" 1 "BLUE" 3 "WHITE" 5 "CYAN"; +VAL_ 353 SETSPEED 0 "HIDDEN" 1 "GRAY" 2 "GREEN" 3 "WHITE" 6 "CYAN"; +VAL_ 353 HDA_ICON 0 "HIDDEN" 1 "GRAY" 2 "GREEN" 3 "WHITE" 5 "CYAN HDP"; +VAL_ 353 SLA_ICON 0 "HIDDEN" 1 "WHITE UP" 2 "WHITE DOWN" 3 "GREEN UP" 4 "GREEN DOWN"; +VAL_ 353 NAV_ICON 0 "HIDDEN" 1 "GRAY" 2 "GREEN" 4 "WHITE"; +VAL_ 353 LFA_ICON 0 "HIDDEN" 1 "GRAY" 2 "GREEN" 3 "WHITE" 5 "CYAN"; +VAL_ 353 LCA_LEFT_ICON 0 "HIDDEN" 1 "GRAY" 2 "GREEN" 4 "WHITE"; +VAL_ 353 LCA_RIGHT_ICON 0 "HIDDEN" 1 "GRAY" 2 "GREEN" 4 "WHITE"; VAL_ 353 BACKGROUND 0 "HIDDEN" 1 "BLUE" 3 "ORANGE" 4 "FLASHING ORANGE" 6 "FLASHING RED" 7 "GRAY"; +VAL_ 353 DAW_ICON 0 "HIDDEN" 1 "ORANGE"; VAL_ 353 CAR_CIRCLE 0 "HIDDEN" 1 "GRAY" 2 "CYAN"; - VAL_ 354 COUNTRY 0 "HIDDEN" 1 "SOUTH_KOREA" 4 "INTL" 5 "JAPAN" 6 "CANADA" 7 "USA" 8 "CHINA" 9 "INTL"; -VAL_ 354 SIGNS 0 "HIDDEN" 1 "PEDESTRIAN_CROSSING" 2 "SCHOOL_CROSSWALK" 8 "STOP" 9 "YIELD" 16 "DO_NOT_PASS" 19 "DO_NOT_ENTER" 24 "ROUNDABOUT" 26 "RIGHT_CURVE_AHEAD" 27 "LEFT_CURVE_AHEAD" 28 "SLIGHT_RIGHT_CURVE_AHEAD" 29 "SLIGHT_LEFT_CURVE_AHEAD"; VAL_ 354 SPEEDLIMIT_FLASH 0 "HIDDEN" 1 "ERROR" 2 "NORMAL" 4 "RED"; +VAL_ 354 SIGNS 0 "HIDDEN" 1 "PEDESTRIAN_CROSSING" 2 "SCHOOL_CROSSWALK" 8 "STOP" 9 "YIELD" 16 "DO_NOT_PASS" 19 "DO_NOT_ENTER" 24 "ROUNDABOUT" 26 "RIGHT_CURVE_AHEAD" 27 "LEFT_CURVE_AHEAD" 28 "SLIGHT_RIGHT_CURVE_AHEAD" 29 "SLIGHT_LEFT_CURVE_AHEAD"; VAL_ 354 SPEEDLIMIT_WEATHER 0 "HIDDEN" 1 "RAIN" 2 "SNOW" 3 "RAIN+SNOW" 4 "TRAILER"; VAL_ 354 VIBRATE 0 "NONE" 1 "VIBRATE"; VAL_ 354 FF_DETECT 0 "HIDDEN" 1 "GRAY BOX" 2 "WHITE BOX" 3 "GRAY CAR" 4 "WHITE CAR" 5 "GRAY TRUCK" 6 "WHITE TRUCK" 7 "GRAY PERSON" 8 "WHITE PERSON" 9 "GRAY BICYCLE" 10 "WHITE BICYCLE" 11 "GRAY MOTORCYCLE" 12 "WHITE MOTORCYCLE" 13 "DARK CONE" 14 "ORANGE CONE"; VAL_ 354 FF_DETECT_ALT 0 "HIDDEN" 1 "GRAY BOX" 2 "WHITE BOX" 3 "DIM CONE" 4 "ORANGE CONE"; VAL_ 354 LF_DETECT 0 "HIDDEN" 1 "GRAY BOX" 2 "WHITE BOX" 3 "GRAY CAR" 4 "WHITE CAR" 5 "GRAY TRUCK" 6 "WHITE TRUCK" 7 "GRAY PERSON" 8 "WHITE PERSON" 9 "GRAY BICYCLE" 10 "WHITE BICYCLE" 11 "GRAY MOTORCYCLE" 12 "WHITE MOTORCYCLE" 13 "DARK CONE" 14 "ORANGE CONE"; -VAL_ 354 LR_DETECT 0 "HIDDEN" 1 "GRAY BOX" 2 "WHITE BOX" 3 "GRAY CAR" 4 "WHITE CAR" 5 "GRAY TRUCK" 6 "WHITE TRUCK" 7 "GRAY PERSON" 8 "WHITE PERSON" 9 "GRAY BICYCLE" 10 "WHITE BICYCLE" 11 "GRAY MOTORCYCLE" 12 "WHITE MOTORCYCLE" 13 "DARK CONE" 14 "ORANGE CONE"; VAL_ 354 RF_DETECT 0 "HIDDEN" 1 "GRAY BOX" 2 "WHITE BOX" 3 "GRAY CAR" 4 "WHITE CAR" 5 "GRAY TRUCK" 6 "WHITE TRUCK" 7 "GRAY PERSON" 8 "WHITE PERSON" 9 "GRAY BICYCLE" 10 "WHITE BICYCLE" 11 "GRAY MOTORCYCLE" 12 "WHITE MOTORCYCLE" 13 "DARK CONE" 14 "ORANGE CONE"; +VAL_ 354 LR_DETECT 0 "HIDDEN" 1 "GRAY BOX" 2 "WHITE BOX" 3 "GRAY CAR" 4 "WHITE CAR" 5 "GRAY TRUCK" 6 "WHITE TRUCK" 7 "GRAY PERSON" 8 "WHITE PERSON" 9 "GRAY BICYCLE" 10 "WHITE BICYCLE" 11 "GRAY MOTORCYCLE" 12 "WHITE MOTORCYCLE" 13 "DARK CONE" 14 "ORANGE CONE"; VAL_ 354 RR_DETECT 0 "HIDDEN" 1 "GRAY BOX" 2 "WHITE BOX" 3 "GRAY CAR" 4 "WHITE CAR" 5 "GRAY TRUCK" 6 "WHITE TRUCK" 7 "GRAY PERSON" 8 "WHITE PERSON" 9 "GRAY BICYCLE" 10 "WHITE BICYCLE" 11 "GRAY MOTORCYCLE" 12 "WHITE MOTORCYCLE" 13 "DARK CONE" 14 "ORANGE CONE"; VAL_ 354 FAULT_FSS 0 "HIDDEN" 1 "CHECK_FORWARD_SAFETY_SYSTEM" 2 "FORWARD_SAFETY_SYSTEM_LIMITED_CAMERA_OBSCURED" 3 "FORWARD_SAFETY_SYSTEM_LIMITED_RADAR_BLOCKED"; VAL_ 354 FAULT_FCA 0 "HIDDEN" 1 "CHECK_FORWARD_SIDE_SAFETY_SYSTEM" 2 "FORWARD_SIDE_SAFETY_SYSTEM_LIMITED_CAMERA_OBSCURED" 3 "FORWARD_SIDE_SAFETY_SYSTEM_LIMITED_RADAR_BLOCKED"; @@ -1048,31 +1044,30 @@ VAL_ 354 FAULT_LCA 0 "HIDDEN" 1 "CHECK_LANE_CHANGE_ASSIST_FUNCTION" 2 "LANE_CHAN VAL_ 354 FAULT_HDP 0 "HIDDEN" 1 "CHECK_HIGHWAY_DRIVING_PILOT_SYSTEM" 2 "HIGHWAY_DRIVING_PILOT_DISABLED_CAMERA_OBSCURED" 3 "HIGHWAY_DRIVING_PILOT_DISABLED_RADAR_BLOCKED" 4 "HIGHWAY_DRIVING_PILOT_DISABLED_LIDAR_BLOCKED"; VAL_ 354 FAULT_DAS 0 "HIDDEN" 1 "CHECK_DRIVER_ASSISTANCE_SYSTEM" 2 "DRIVER_ASSISTANCE_SYSTEM_LIMITED_CAMERA_OBSCURED" 3 "DRIVER_ASSISTANCE_SYSTEM_LIMITED_RADAR_BLOCKED" 4 "DRIVER_ASSISTANCE_SYSTEM_LIMITED_CAMERA_OBSCURED_AND_RADAR_BLOCKED"; VAL_ 354 FAULT_ESS 0 "HIDDEN" 1 "CHECK_EMERGENCY_STOPPING_FUNCTION" 2 "EMERGENCY_STOPPING_FUNCTION_DISABLED_CAMERA_OBSCURED" 3 "EMERGENCY_STOPPING_FUNCTION_DISABLED_RADAR_BLOCKED"; - VAL_ 362 BLINKER_CONTROL 1 "hazards" 2 "hazards button backlight" 3 "left blinkers" 4 "right blinkers"; +VAL_ 373 SCC_OptTyp 0 "SCC is not equipped" 1 "SCC is equipped" 2 "Not used" 3 "Error Indicator"; VAL_ 373 ACCEnable 0 "SCC ready" 1 "SCC temp fault" 2 "SCC permanent fault" 3 "SCC permanent fault, communication issue"; -VAL_ 373 SCC_OptTyp 0 "SCC is not equipped" 1 "SCC is equipped" 2 "Not used" 3 "Error Indicator" ; -VAL_ 373 SCC_ReqLimSta 0 "No request" 1 "Limited No Limitation" 2 "Acceleration Limited" 3 "Deceleration Limited" ; -VAL_ 373 ESC_StdStillVal 0 "No stand still detected" 1 "stand still detected" 2 "Not used" 3 "Error Indicator" ; -VAL_ 373 ESC_DclEnblReq 0 "Disable deceleration control" 1 "Enable deceleration control" 2 "Not used" 3 "Error Indicator" ; -VAL_ 373 ESC_PrkBrkActvSta 0 "Parking brake is not activated" 1 "Parking brake is activated" 2 "Not used" 3 "Error Indicator" ; -VAL_ 373 FCA_EquipSta 0 "FCA is not equipped" 1 "FCA is equipped" 2 "Not used" 3 "Error Indicator" ; -VAL_ 373 FCA_AvlblSta 0 "Available" 1 "Temporarily not available" 2 "Permanently not available" 3 "FCA Communication Error" ; -VAL_ 416 ACCMode 0 "off" 1 "enabled" 2 "driver_override" 3 "off_maybe_fault" 4 "cancelled" ; -VAL_ 426 CRUISE_BUTTONS 0 "none" 1 "res_accel" 2 "set_decel" 3 "gap_distance" 4 "pause_resume" ; -VAL_ 463 CRUISE_BUTTONS 0 "none" 1 "res_accel" 2 "set_decel" 3 "gap_distance" 4 "pause_resume" ; +VAL_ 373 SCC_ReqLimSta 0 "No request" 1 "Limited No Limitation" 2 "Acceleration Limited" 3 "Deceleration Limited"; +VAL_ 373 ESC_StdStillVal 0 "No stand still detected" 1 "stand still detected" 2 "Not used" 3 "Error Indicator"; +VAL_ 373 ESC_DclEnblReq 0 "Disable deceleration control" 1 "Enable deceleration control" 2 "Not used" 3 "Error Indicator"; +VAL_ 373 ESC_PrkBrkActvSta 0 "Parking brake is not activated" 1 "Parking brake is activated" 2 "Not used" 3 "Error Indicator"; +VAL_ 373 FCA_EquipSta 0 "FCA is not equipped" 1 "FCA is equipped" 2 "Not used" 3 "Error Indicator"; +VAL_ 373 FCA_AvlblSta 0 "Available" 1 "Temporarily not available" 2 "Permanently not available" 3 "FCA Communication Error"; +VAL_ 416 ACCMode 0 "off" 1 "enabled" 2 "driver_override" 3 "off_maybe_fault" 4 "cancelled"; +VAL_ 426 CRUISE_BUTTONS 0 "none" 1 "res_accel" 2 "set_decel" 3 "gap_distance" 4 "pause_resume"; +VAL_ 463 CRUISE_BUTTONS 0 "none" 1 "res_accel" 2 "set_decel" 3 "gap_distance" 4 "pause_resume"; VAL_ 463 RIGHT_PADDLE 0 "Not Pulled" 1 "Pulled"; VAL_ 463 LEFT_PADDLE 0 "Not Pulled" 1 "Pulled"; -VAL_ 480 HDA_OptUsmSta 0 "Not Applied" 1 "Function Off" 2 "Function On" 3 "Reserved" 4 "Reserved" 5 "Reserved" 6 "Reserved" 7 "Invalid (Fail)" ; -VAL_ 480 LFA_OptUsmSta 0 "Not Applied" 1 "Function Off" 2 "Function On" 3 "Reserved" 4 "Reserved" 5 "Reserved" 6 "Reserved" 7 "Invalid (Fail)" ; -VAL_ 480 HDA_CntrlModSta 0 "System Deactive (Default)" 1 "System Ready" 2 "System Active" 3 "Reserved" ; -VAL_ 480 HDA_InfoPUDis 0 "No pop-up" 1 "system start pop-up" 2 "system auto disengaged pop-up by highway off" 3 "system auto disengaged pop-up" 4 "system Fail pop-up" 5 "Hands-off pop up" 6 "Hands-off pop up w/ sound" 7 "System Automatic off" ; -VAL_ 480 HDA_AutoSetSpdSta 0 "Auto Set Speed Off" 1 "Auto Set Speed On" 2 "Reserved" 3 "Error indicator" ; -VAL_ 480 HDA_AutoSetSpdUpdtSta 0 "Auto Set Speed Update Off" 1 "Auto Set Speed Update On" 2 "Reserved" 3 "Error indicator" ; -VAL_ 480 HDA_LFA_SymSta 0 "Off" 1 "Gray" 2 "Green" 3 "Green blink" ; -VAL_ 480 HDA_LFA_WrnSnd 0 "Off " 1 "Additional Warning Sound" 2 "Reserved" 3 "Error indicator" ; -VAL_ 480 HDA_InfoPUDis1 0 "No Pop-up" 1 "System Automatic off (LFA)" 2 "System Automatic off (HDA)" 3 "Reserved" 4 "Reserved" 5 "Reserved" 6 "Not Used" 7 "Error Indicator" ; -VAL_ 480 HDA_TDMRMDclReq 0 "Not automatically deactivated state of LFA (default)" 1 "Automatically deactivated state of LFA" 2 "Reserved" 3 "Reserved" ; +VAL_ 480 HDA_OptUsmSta 0 "Not Applied" 1 "Function Off" 2 "Function On" 3 "Reserved" 4 "Reserved" 5 "Reserved" 6 "Reserved" 7 "Invalid (Fail)"; +VAL_ 480 LFA_OptUsmSta 0 "Not Applied" 1 "Function Off" 2 "Function On" 3 "Reserved" 4 "Reserved" 5 "Reserved" 6 "Reserved" 7 "Invalid (Fail)"; +VAL_ 480 HDA_CntrlModSta 0 "System Deactive (Default)" 1 "System Ready" 2 "System Active" 3 "Reserved"; +VAL_ 480 HDA_InfoPUDis 0 "No pop-up" 1 "system start pop-up" 2 "system auto disengaged pop-up by highway off" 3 "system auto disengaged pop-up" 4 "system Fail pop-up" 5 "Hands-off pop up" 6 "Hands-off pop up w/ sound" 7 "System Automatic off"; +VAL_ 480 HDA_AutoSetSpdSta 0 "Auto Set Speed Off" 1 "Auto Set Speed On" 2 "Reserved" 3 "Error indicator"; +VAL_ 480 HDA_AutoSetSpdUpdtSta 0 "Auto Set Speed Update Off" 1 "Auto Set Speed Update On" 2 "Reserved" 3 "Error indicator"; +VAL_ 480 HDA_LFA_SymSta 0 "Off" 1 "Gray" 2 "Green" 3 "Green blink"; +VAL_ 480 HDA_LFA_WrnSnd 0 "Off" 1 "Additional Warning Sound" 2 "Reserved" 3 "Error indicator"; +VAL_ 480 HDA_InfoPUDis1 0 "No Pop-up" 1 "System Automatic off (LFA)" 2 "System Automatic off (HDA)" 3 "Reserved" 4 "Reserved" 5 "Reserved" 6 "Not Used" 7 "Error Indicator"; +VAL_ 480 HDA_TDMRMDclReq 0 "Not automatically deactivated state of LFA (default)" 1 "Automatically deactivated state of LFA" 2 "Reserved" 3 "Reserved"; VAL_ 490 HDA_MODE2 1 "Lane change icon gray" 2 "lane green + lane change icon green" 3 "lane green + lane change icon green (both blinking)" 4 "lane white + lane change icon white (both blinking rapidly)" 5 "Lane Change Assist system check warning"; VAL_ 490 LANE_LEFT 0 "IDLE" 1 "ON_SOURCE" 2 "ON_TARGET"; VAL_ 490 LANE_RIGHT 0 "IDLE" 1 "ON_SOURCE" 2 "ON_TARGET"; @@ -1094,9 +1089,11 @@ VAL_ 866 LEFT_LANE_LINE 0 "Not Detected" 1 "Low Confidence" 2 "Medium Confidence VAL_ 866 RIGHT_LANE_LINE 0 "Not Detected" 1 "Low Confidence" 2 "Medium Confidence" 3 "High Confidence"; VAL_ 1041 DRIVER_DOOR 0 "Closed" 1 "Opened"; VAL_ 1041 PASSENGER_DOOR 0 "Closed" 1 "Opened"; +VAL_ 1041 PASSENGER_SEATBELT 0 "Unlatched" 1 "Latched"; +VAL_ 1041 DRIVER_SEATBELT 0 "Unlatched" 1 "Latched"; VAL_ 1041 DRIVER_REAR_DOOR 0 "Closed" 1 "Opened"; VAL_ 1041 PASSENGER_REAR_DOOR 0 "Closed" 1 "Opened"; -VAL_ 1041 DRIVER_SEATBELT 0 "Unlatched" 1 "Latched"; -VAL_ 1041 PASSENGER_SEATBELT 0 "Unlatched" 1 "Latched"; +VAL_ 1079 TRAILER_CONNECTED 1 "CONNECTED" 0 "DISCONNECTED"; + VAL_ 1144 DRIVE_MODE2 3 "Set Sport" 1 "Set Normal" 2 "Set Eco"; VAL_ 1240 DISTANCE_UNIT 1 "Miles" 0 "Kilometers"; diff --git a/tools/cabana/cabana b/tools/cabana/cabana old mode 100644 new mode 100755 diff --git a/tools/op.sh b/tools/op.sh old mode 100644 new mode 100755 diff --git a/tools/setup_dependencies.sh b/tools/setup_dependencies.sh old mode 100644 new mode 100755 From 53e952e074839567d0678fb9e76a9140da11cebb Mon Sep 17 00:00:00 2001 From: janpoo6427 Date: Thu, 18 Jun 2026 13:45:59 +0900 Subject: [PATCH 2/5] Add trailer steering diagnostic probe --- selfdrive/debug/trailer_steering_probe.py | 269 ++++++++++++++++++++++ 1 file changed, 269 insertions(+) create mode 100755 selfdrive/debug/trailer_steering_probe.py diff --git a/selfdrive/debug/trailer_steering_probe.py b/selfdrive/debug/trailer_steering_probe.py new file mode 100755 index 00000000000..bc4cd84ac87 --- /dev/null +++ b/selfdrive/debug/trailer_steering_probe.py @@ -0,0 +1,269 @@ +#!/usr/bin/env python3 +""" +Capture openpilot lateral-control state and selected Hyundai CAN-FD messages. + +Run from the openpilot checkout on the comma device: + + python3 selfdrive/debug/trailer_steering_probe.py --label no_trailer --duration 30 + python3 selfdrive/debug/trailer_steering_probe.py --label trailer_idle --duration 30 + python3 selfdrive/debug/trailer_steering_probe.py --label trailer_drive --duration 60 + +The script writes: +